Saya kira pq.Array
memberi Anda array PostgreSQL dalam bentuk string sehingga Anda mendapatkan sesuatu seperti ini:
unnest('{a,b,c,d,e}')
dan PostgreSQL tidak yakin bagaimana seharusnya menafsirkan string itu, oleh karena itu keluhan tentang unnest(unknown)
. Anda harus dapat menambahkan pemeran tipe eksplisit untuk menyelesaikan masalah:
unnest($1::text[]) -- PostgreSQL-specific casting syntax
unnest(cast($1 as text[])) -- Standard casting syntax
Anda akan berakhir dengan sesuatu seperti ini:
rows, err := db.Query("select colname from (SELECT date, unnest($1::text[]) AS colname, unnest($1) AS thing from test1 where date='123') as tester where thing=1;", pq.Array(arr1))