Database
 sql >> Base de Dados >  >> RDS >> Database

Como não mostrar duplicatas no SQL

Problema:


Você gostaria de exibir registros não duplicados em SQL.

Exemplo:


Nosso banco de dados tem uma tabela chamada City com dados nas colunas id , name e country .
id nome país
1 Madri Espanha
2 Barcelona Espanha
3 Varsóvia Polônia
4 Cracóvia Polônia

Vamos pegar os nomes dos países sem duplicatas.

Solução:


Usaremos a palavra-chave DISTINCT . Segue a consulta:
SELECT
DISTINCT country
FROM City;

Segue o resultado da consulta:
país
Espanha
Polônia

Discussão:


Se você quiser que a consulta retorne apenas linhas exclusivas, use a palavra-chave DISTINCT após SELECT . DISTINCT pode ser usado para buscar linhas exclusivas de uma ou mais colunas. Você precisa listar as colunas após o DISTINCT palavra-chave.

Como funciona sob o capô? Quando a consulta é executada, todo o conjunto de dados é selecionado primeiro, depois DISTINCT remove as linhas duplicadas dadas as colunas selecionadas.

Em nosso exemplo, Espanha e Polônia aparecem duas vezes na tabela. No entanto, após aplicar a palavra-chave DISTINCT , cada um deles é retornado apenas uma vez.