Boa noite
Tenho a seguinte situação, se faço SELECT em uma tabela com campos varchar
está retornando corretamente os dados, mas se faço SELECT destes mesmos
dados em um ARRAY de um SUB-SELECT, então está retornando os valores com
barra invertida (\) no início e fim da coluna..
Mais um detalhe, se o valor da coluna não tiver espaços retorna certo,
senão retorna conforme abaixo:
SELECT OK:
SELECT * FROM material_cores;
3;1;1;"Napa Avelã";"2012-08-15 16:33:02.468763";"Napa_1.jpg"
3;1;2;"Napa Bandeira";"2012-08-15 16:33:02.468763";"Napa_2.jpg"
3;1;3;"Napa Cobalto";"2012-08-15 16:33:02.468763";"Napa_3.jpg"
3;1;4;"Napa Coral";"2012-08-15 16:33:02.468763";"Napa_4.jpg"
SELECT com retorno inválido:
SELECT m.mat_id, m.mat_descricao, (SELECT array(SELECT
array[mc.matcor_id::varchar,mc.matcor_descricao::varchar,mc.matcor_foto::varchar]::varchar
FROM public.material_cores mc WHERE mc.sis_ten_id = m.sis_ten_id AND
mc.mat_id = m.mat_id ORDER BY mc.matcor_id)) AS arr_mat_cores
FROM public.material m WHERE m.sis_ten_id = 2 ORDER BY m.mat_id
1;"Napa";"{"{1,\"Napa Avelã\",Napa_1.jpg}","{2,\"Napa
Bandeira\",Napa_2.jpg}","{3,\"Napa Cobalto\",Napa_3.jpg}","{4,\"Napa
Coral\",Napa_4.jpg}","{5,\"Napa Golden\",Napa_5.jpg}","{6,\"Napa
Lilac\",Napa_6.jpg}","{7,\"Napa Lima\",Napa_7.jpg}","{8,\"Napa
Magemta\",Napa_8.jpg}","{9,\"Napa Nuvem\",Napa_9.jpg}","{10,\"Napa
Preto\",Napa_10.jpg}","{11,\"Napa Rato\",Napa_11.jpg}","{12,\"Napa
Rosado\",Napa_12.jpg}","{13,\"Napa Turquesa\",Napa_13.jpg}","{14,\"Napa
Vermelho\",Napa_14.jpg}"}"
Vejam a diferença em um e outro SELECT:
"Napa Avelã" -> \"Napa Avelã\"
Alguém já passou por algum caso como esse?
Renato Becker
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral