Summary: neste tutorial, você aprenderá como usar o comando Oracle SELECT DISTINCT
para consultar dados distintos de tabelas.
>
Introduction to Oracle SELECT DISTINCT statement
A cláusula DISTINCT
é usada em um comando SELECT
para filtrar linhas duplicadas no conjunto de resultados. Ele assegura que as linhas retornadas são únicas para a coluna ou colunas especificadas na cláusula SELECT
.
O seguinte ilustra a sintaxe da instrução SELECT DISTINCT
:
Nesta instrução, os valores na column_1
da cláusula table
são comparados para determinar as duplicatas.
Para recuperar dados únicos baseados em múltiplas colunas, basta especificar a lista de colunas na cláusula SELECT
da seguinte forma:
Nesta sintaxe, a combinação de valores nos column_1
, column_2
, e column_3
são usados para determinar a singularidade dos dados.
A cláusula DISTINCT
só pode ser usada na instrução SELECT
.
Nota que DISTINCT
é sinônimo de UNIQUE
que não é padrão SQL. É uma boa prática usar sempre DISTINCT
em vez de UNIQUE
.
Exemplos de DISTINTO DE SELECÇÃO DE ÓRGÃOS
Vejamos alguns exemplos de uso de SELECT DISTINCT
para ver como funciona.
A) Oracle SELECT DISTINCT um exemplo de coluna
Veja a tabela contacts
na base de dados de amostra:
O exemplo seguinte recupera todos os primeiros nomes de contatos:
A consulta retornou 319 linhas, indicando que a tabela contacts
tem 319 linhas.
Para obter primeiros nomes únicos de contatos, você adiciona a palavra-chave DISTINCT
ao comando acima SELECT
como segue:
Agora, o conjunto de resultados tem 302 linhas, o que significa que 17 linhas duplicadas foram removidas.
B) Exemplo de múltiplas colunas Oracle SELECT DISTINCT
Veja o seguinte order_items
tabela:
A seguinte instrução seleciona o id e a quantidade de produtos distintos da tabela order_items
:
O seguinte ilustra o resultado:
Neste exemplo, ambos os valores as colunas product_id
e quantity
são usados para avaliar a singularidade das linhas no conjunto de resultados.
C) Oracle SELECT DISTINCT e NULL
The DISTINCT
trata valores NULL a serem duplicados um do outro. Se você usar a instrução SELECT DISTINCT
para consultar dados de uma coluna que tem muitos valores NULL, o conjunto de resultados incluirá apenas um valor NULL.
Veja a tabela locations
no banco de dados de amostra.
A seguinte instrução recupera dados da coluna de estado, que tem muitos valores NULL:
Resultado:
Como você pode ver, apenas um valor NULL é retornado.
Note que se você quiser aplicar o DISTINCT
a algumas colunas, enquanto pula outras colunas, você deve usar a cláusula GROUP BY
em vez disso.
Neste tutorial, você aprendeu como usar a declaração SELECT DISTINCT
para obter dados únicos baseados em uma ou mais colunas.
- Este tutorial foi útil?
- Sim Não