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

Kesalahan dalam pernyataan dinamis PL/PGSQL (fungsi dan operator dapat mengambil paling banyak satu set argumen)

Itu karena unnest &unnest_table your Anda keduanya mengembalikan SETOF <sometype> , dan operators can take at most one set argument , jadi f.ex.:

SELECT unnest(ARRAY['a', 'b', 'c']);

-- will return

unnest
------
"a"
"b"
"c"


SELECT unnest(ARRAY['a', 'b', 'c']) || 'd';

-- will return

?column?
--------
"ad"
"bd"
"cd"


SELECT unnest(ARRAY['a', 'b', 'c']) || 'd' || unnest(ARRAY['a', 'b', 'c']);

-- will return

ERROR: functions and operators can take at most one set argument
SQL state: 0A000

Sunting :tetapi saya sangat ragu, Anda ingin membuat tabel sebanyak itu dengan nama yang sama - juga EXECUTE tidak menerima lebih dari satu baris:

ERROR: query "..." returned more than one row
SQL state: 21000

Saya pikir Anda harus menggunakan sesuatu seperti array_to_string() fungsi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres ERROR:tidak dapat membuka file untuk dibaca:Izin ditolak

  2. menyapu dibatalkan! ERROR:harus pemilik database

  3. Postgres:Melewati tipe khusus dari Java ke fungsi postgres

  4. Mencoba mengatur postgres untuk aplikasi ror, mendapatkan kesalahan - fe_sendauth:tidak ada kata sandi yang diberikan

  5. Menggunakan npgsql 12 dan ef 6 bersama - adakah yang berhasil melakukannya?