Saat mengembalikan SETOF record
kolom output tidak diketik dan tidak diberi nama. Dengan demikian formulir ini tidak dapat digunakan secara langsung dalam klausa FROM seolah-olah itu adalah subquery atau tabel.
Yaitu, saat menerbitkan:
SELECT * from events_by_type_2('social');
kami mendapatkan kesalahan ini:
Itu dapat "dicor" ke dalam tipe kolom yang benar oleh pemanggil SQL. Formulir ini berfungsi:
SELECT * from events_by_type_2('social') as (id bigint, name text);
dan menghasilkan:
id | name ----+---------------- 1 | Dance Party 2 | Happy Hour ...
Untuk alasan ini SETOF record
dianggap kurang praktis. Ini harus digunakan hanya jika jenis kolom hasil tidak diketahui sebelumnya.