STRING_AGG e função de melhoria FNC_Group_String
A partir do SQL2017 uma função do tipo aggregate veio para facilitar as implementações de rotinas de banco de dados dos desenvolvedores: STRING_AGG. Antes desta função, precisávamos construir uma sequência de updates dentro de while para chegar ao mesmo resultado. O STRING_AGG(<expressão>, <separador>) concatena strings lado a lado dentro de uma sequência de registros agrupados pelo GROUP BY, separando-as por um separador definido pelo desenvolvedor no segundo parâmetro da função. Os seguintes exemplos ilustram melhor o conceito: i) Na tabela de estoque de fios (tabela Swd_Est_Fios) tenho uma lista de códigos de fios (campo CodFio) e quero agrupá-los para demonstrar em uma coluna apenas todos os códigos de etiquetas (campo Etiqueta) de cada fio que entraram em uma determinada data (campo Data): SELECT CodFio, STRING_AGG (Etiqueta, ', ' ) FROM Swd_Est_Fios WHERE Data= ' 2025-01-20 ' GROUP BY CodFio O resultado será: Figura 1 - Resultado do script...