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

Oracle Cast dan MULTISET tersedia di POSTGRES

Sayangnya, PostgreSQL tidak benar-benar mendukung MULTISET standar SQL operator, atau set bersarang pada umumnya. Anda dapat membuat ARRAY dari ROW ketik seperti ini:

select array[row(1, 2), row(3, 4)]

Dan Anda bahkan dapat menghapus susunan array di atas

select * from unnest(array[row(1, 2), row(3, 4)]) t(a int, b int)

Jadi, jika ARRAY dari ROW dapat diterima oleh Anda, Anda dapat menulis sesuatu seperti ini:

select array_agg(row(a, b))
from (
  select ...
) t(a, b)

Jika Anda memiliki OBJECT Anda sendiri ketik PostgreSQL, Anda dapat melemparkan ROW anonim untuk jenis Anda:

select array_agg(row(a, b)::your_type)
from (
  select ...
) t(a, b)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pernyataan INSERT opsional dalam rantai transaksi menggunakan NodeJS dan Postgres

  2. Cara Membuat Pengguna dengan pgAdmin

  3. psycopg2 membocorkan memori setelah permintaan besar

  4. PostgreSQL mengulang fungsi di luar. Apakah itu mungkin?

  5. Kaskade bertahan membuat baris duplikat?