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

Elemen NULL hilang saat casting hasil unnest()

Casting fungsi SRF (dalam klausa FROM) tidak didukung - Anda tidak dapat menggunakan operator apa pun di sana. Hanya panggilan fungsi yang diperbolehkan.

pemeran hanya dimungkinkan dalam daftar kolom:

postgres=# SELECT * FROM unnest('{2,NULL,1}'::int[])::text;
ERROR:  syntax error at or near "::"
LINE 1: SELECT * FROM unnest('{2,NULL,1}'::int[])::text;
                                                 ^
postgres=# SELECT v::text FROM unnest('{2,NULL,1}'::int[]) g(v);
   v    
────────
      2
 [null]
      1
(3 rows)

Baris yang hilang dari NULL mungkin merupakan bug dan harus dilaporkan

postgres=# SELECT unnest('{1,NULL,4}'::int[])::text;
 unnest 
────────
      1
 [null]
      4
(3 rows)

postgres=# SELECT unnest('{1,NULL,4}'::int[])::numeric;
 unnest 
────────
      1
      4
(2 rows)

Tidak ada alasan, mengapa baris NULL harus dijatuhkan, saya pikir




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana timeofday() Bekerja di PostgreSQL

  2. Cara mengunduh kolom byte Postgres sebagai file

  3. Pengecualian C# SqlConnection:Kata Kunci tidak Didukung 'Port'

  4. Masalah memesan karakter beraksen di PostgreSQL 8.4

  5. Kueri spasial pada tabel besar dengan beberapa self join berkinerja lambat