PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Keluarkan string ke angka, interpretasikan string nol atau kosong sebagai 0

Jenis nilai harus konsisten; menggabungkan string kosong ke 0 berarti Anda tidak dapat membandingkannya dengan null di nullif . Jadi salah satu dari ini berfungsi:

# create table tests (orig varchar);
CREATE TABLE

# insert into tests (orig) values ('1'), (''), (NULL), ('0');
INSERT 0 4


# select orig, cast(coalesce(nullif(orig,''),'0') as float) as result from tests;
 orig | result 
------+--------
    1 |      1
      |      0
      |      0
    0 |      0
(4 rows)


# select orig, coalesce(cast(nullif(orig,'') as float),0) as result from tests;
 orig | result 
------+--------
 1    |      1
      |      0
      |      0
 0    |      0
(4 rows)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL:Tipe Data mana yang harus digunakan untuk Mata Uang?

  2. Transpose baris dan kolom (alias pivot) hanya dengan minimum COUNT()?

  3. PostgreSQL:Enam Potongan yang Tidak Mudah

  4. Postgres lambat 9.3 kueri

  5. PostgreSQL:Mengapa psql tidak dapat terhubung ke server?