quinta-feira, 10 de outubro de 2019

OGB Appreciation Day: LISTAGG DISTINCT on Oracle Database 19c

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