sql >> Databáze >  >> RDS >> PostgreSQL

pq:funkce unnest(unknown) není jedinečná

Tipoval bych, že pq.Array vám dává pole PostgreSQL ve formě řetězce, takže skončíte s něčím takovým:

unnest('{a,b,c,d,e}')

a PostgreSQL si není jistý, jak by měl tento řetězec interpretovat, proto stížnost na unnest(unknown) . Měli byste být schopni přidat explicitní typ přetypování, aby se věci vyjasnily:

unnest($1::text[])         -- PostgreSQL-specific casting syntax
unnest(cast($1 as text[])) -- Standard casting syntax

Skončili byste s něčím takovým:

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))



  1. Mysql vrací nesprávný výsledek bigint o jednu, velmi podivnou chybu

  2. Příklady MySQL REGEXP

  3. Jak mohu zadat dotaz na všechny řádky v okruhu 5 mil od mých souřadnic?

  4. Spring MVC - smazání záznamu z tabulky JSP