Função de tabela RESULT_SCAN: alterações em nomes de coluna duplicados¶
Atenção
Essa mudança de comportamento está no pacote 2023_03.
Para saber o status atual do pacote, consulte Histórico do pacote.
Atualmente, se houver nomes de coluna duplicados nos resultados processados pela funçõ RESULT_SCAN, a função anexa um sufixo a cada nome de coluna duplicado para tornar os nomes de coluna exclusivos. Por exemplo, se duas colunas forem nomeadas id
, a função retorna uma tabela com os nomes das colunas id
e id_1
.
A maneira que a função RESULT_SCAN lida com nomes de coluna duplicados se comporta da seguinte maneira:
- Anteriormente:
Se os resultados contiverem nomes de coluna duplicados, a função RESULT_SCAN anexa _<n> a cada nome de coluna duplicado para tornar os nomes de coluna exclusivos.
A função acrescenta esse sufixo mesmo quando há outras colunas com o mesmo sufixo. Isso pode resultar em nomes de coluna duplicados.
Por exemplo:
SELECT 1 AS a, 2 AS a_1, 3 AS a; +---+-----+---+ | A | A_1 | A | |---+-----+---| | 1 | 2 | 3 | +---+-----+---+ SELECT * FROM TABLE(RESULT_SCAN(LAST_QUERY_ID())); +---+-----+-----+ | A | A_1 | A_1 | |---+-----+-----| | 1 | 2 | 3 | +---+-----+-----+
- Atualmente:
A função RESULT_SCAN anexa um sufixo com o próximo número disponível para tornar os nomes das colunas exclusivos:
SELECT * FROM TABLE(RESULT_SCAN(LAST_QUERY_ID())); +---+-----+-----+ | A | A_1 | A_2 | |---+-----+-----| | 1 | 2 | 3 | +---+-----+-----+
Ref: 1039