Database
 sql >> Database >  >> RDS >> Database

Come non mostrare i duplicati in SQL

Problema:

Desideri visualizzare record non duplicati in SQL.

Esempio:

Il nostro database ha una tabella denominata City con i dati nelle colonne id , name e country .

id paese
1 Madrid Spagna
2 Barcellona Spagna
3 Varsavia Polonia
4 Cracovia Polonia

Prendiamo i nomi dei paesi senza duplicati.

Soluzione:

Utilizzeremo la parola chiave DISTINCT . Ecco la domanda:

SELECT
DISTINCT country
FROM City;

Ecco il risultato della query:

paese
Spagna
Polonia

Discussione:

Se desideri che la query restituisca solo righe univoche, utilizza la parola chiave DISTINCT dopo SELECT . DISTINCT può essere utilizzato per recuperare righe univoche da una o più colonne. Devi elencare le colonne dopo DISTINCT parola chiave.

Come funziona sotto il cofano? Quando la query viene eseguita, viene selezionato prima l'intero set di dati, quindi DISTINCT rimuove le righe duplicate date le colonne selezionate.

Nel nostro esempio, sia la Spagna che la Polonia compaiono due volte nella tabella. Tuttavia, dopo aver applicato la parola chiave DISTINCT , ognuno di essi viene restituito una sola volta.