Tenho uma matriz de tuplas no PostgreSQL 17.
Não consegui ir SELECT...INTO...FROM
trabalhar por algum motivo:
SELECT ARRAY[(1,2)] AS a INTO temp_table;
ERROR: column "a" has pseudo-type record[] SQL state: 42P16
Para resolver isso, tive que convertê-lo para text
:
SELECT ARRAY[(1,2)] AS a, ARRAY[(1,2)]::text AS b
um tipo record[] |
tipo btext |
---|---|
{"(1,2)"} | {"(1,2)"} |
Agora preciso converter column b
de volta para array de tuplas, como column a
. Como isso pode ser feito?
O que você está chamando de tupla é tecnicamente um tipo
record
- a coisa entre parênteses érow
uma sintaxe literal de valor composto , com a palavra-chave row ignorada. Como::record[]
a sintaxe não funciona, você pode criar uma tabela ou tipo fictício para contornar isso:demo at db<>fiddle
Relacionado:
RECORD[]
variável geravariable "..." has pseudo-type record[]
erro