Blog

OGB Appreciation Day: LISTAGG DISTINCT on Oracle Database 19c

By Alex Zaballa

A função LISTAGG foi introduzida no banco de dados Oracle 11g R2.
Na versão 12c R2, foi adicionada a opção de overflow e com isso conseguimos evitar o erro ORA-01489.

Com a versão 19c do banco de dados, foi adicionada a opção de utilizar o DISTINCT e assim é possível remover itens duplicados da lista.

Vamos a um exemplo!

No Brasil, temos o mesmo nome de cidade para estados diferentes:

Ao montar uma lista de cidades, podemos ver que os valores serão repetidos:

Na versão 19c do banco de dados Oracle, podemos utilizar a cláusula DISTINCT para eliminar essa repetição:

#ThanksOGB

Fonte: Alex Zaballa