SQL Server → PostgreSQL

STRING_AGG e FOR XML PATH: agregação de strings na migração SQL Server → PostgreSQL

Substitua STUFF + FOR XML PATH do T-SQL por STRING_AGG ou ARRAY_AGG no PostgreSQL para listas concatenadas.

O padrão clássico no SQL Server para concatenar linhas é STUFF com subconsulta correlacionada e FOR XML PATH. No PostgreSQL, STRING_AGG com ORDER BY dentro do GROUP BY resolve o mesmo caso com menos código.

Equivalente com STRING_AGG

PostgreSQL

SELECT d.departamento,
  STRING_AGG(e.nome, ', ' ORDER BY e.nome) AS nomes
FROM departamentos d
JOIN funcionarios e ON e.dept_id = d.id
GROUP BY d.id, d.departamento;

Analisador de Impacto

Agregação de strings é um dos erros mais demorados de converter na mão. Teste o trecho abaixo no conversor.

Abrir Análise de Projeto →