PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak rzutować z tekstu na int, jeśli kolumna zawiera zarówno wartości int, jak i NULL w PostgreSQL?

Właściwie możesz rzutować NULL na int, po prostu nie możesz rzucić pustego ciągu na int. Zakładając, że chcesz NULL w nowej kolumnie, jeśli data1 zawiera pusty ciąg lub NULL, możesz zrobić coś takiego:

UPDATE table SET data2 = cast(nullif(data1, '') AS int);

Jeśli potrzebujesz innej logiki, możesz użyć na przykład (pusty ciąg zamienia się na -1):

UPDATE table SET data2 = CASE WHEN data1 = '' THEN -1 ELSE cast(data1 AS int) END;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pgadmin4 :nie można skontaktować się z serwerem aplikacji postgresql.

  2. Odpowiednik Group_concat w postgresql 8.2.11

  3. PostgreSQL:Skrypt SQL do pobrania listy wszystkich tabel, które mają określoną kolumnę jako klucz obcy

  4. Grupuj wartości SQL dla jednej kolumny według innej kolumny

  5. Zmiana klucza podstawowego na złożony klucz podstawowy