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.