sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan caster du fra tekst til int, hvis kolonne indeholder både int- og NULL-værdier i PostgreSQL

Faktisk kan du caste NULL til int, du kan bare ikke caste en tom streng til int. Forudsat at du vil have NULL i den nye kolonne hvis data1 indeholder en tom streng eller NULL, kan du gøre noget som dette:

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

Hvis du ønsker en anden logik, kan du f.eks. bruge (tom streng konverterer til -1):

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



  1. MySQLi udarbejdet erklæring med dynamisk opdateringsforespørgsel

  2. PHP + MySQL transaktionseksempler

  3. php-fejl og endda efter at have defineret variabel

  4. PHP MYSQL -> Vis datoer gemt som 'dato' type fra MYSQL Database