Hi, all.
Have upgraded 10 to 12, but have a some trouble with ::name(?) to ::text conversion:
in 10 and 11 this works fine:
create schema kpi_test;
create table kpi_test.ttest0 ( a int, b text, c text);
with
cols as (
select column_name, udt_name from information_schema.columns where table_schema = 'kpi_test' and table_name = 'ttest0' order by ordinal_position
),
cols_sel as (
select
string_agg(
case when column_name = 'a' then repeat('x', 256)
else column_name
end,
', ') x0
from cols
)
select length(x0)from cols_sel
;
with
cols as (
select column_name::text, udt_name from information_schema.columns where table_schema = 'kpi_test' and table_name = 'ttest0' order by ordinal_position
),
cols_sel as (
select
string_agg(
case when column_name = 'a' then repeat('x', 256)
else column_name::text
end,
', ') x0
from cols
)
select length(x0)from cols_sel
;
The results are expected: 262 and 262. Ok.
But in 12 the results are 69 and 262. I'm think the ::name is more "efficient" and ::text was converted to ::name ?
length
════════
69
(1 row)
length
════════
262
(1 row)
Please help.