SQL Seleziona distinto

SQL Seleziona distinto
La clausola distinta in SQL consente di selezionare elementi unici. Questo, a sua volta, aiuta a rimuovere i record duplicati da un set di risultati.

Impariamo come utilizzare la clausola distinta insieme all'istruzione Select to Filter per record univoci.

Clausole distinto SQL

La sintassi per l'uso della clausola distinta è come mostrato di seguito:

Seleziona colonna distinto1, colonna2, ... columnn
Da table_name
Dove [condizione]

Sebbene la clausola Where sia facoltativa, ti consente di essere più preciso nei record da recuperare dal database.

Ricorda che la clausola distinta valuterà tutte le colonne specificate per determinare i record univoci.

Ad esempio, se una colonna contiene valori null, la clausola distinta selezionerà il primo record null e rimuoverà tutti gli altri dal set risultante. Quindi, quando si lavora con distinto, un null viene trattato come un valore.

Esempio distinto SQL

Illustriamo come usare la clausola distinta in SQL.

Possiamo iniziare creando un database e una tabella di esempio come mostrato nelle query seguenti:

Creare il database campionato;

Quindi, crea una tabella con il seguente schema.

Crea utenti di tabelle (
Chiave primaria seriale ID,
first_name varchar (100),
last_name varchar (100),
State Varchar (25),
Bool attivo
);

Una volta creato lo schema della tabella, possiamo aggiungere dati di esempio come mostrato:

Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Mary', 'Smith', 'New York', vero);
Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Linda', 'Williams', 'Colorado', false);
Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Taylor', 'Moore', 'Utah', vero);
Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Susan', 'Wilson', 'Washington', vero);
Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Mary', 'Smith', 'New York', vero);
Inserisci in utenti (first_name, last_name, stato, attivo) valori (
'Taylor', 'Moore', 'Utah', vero);

Le query di cui sopra aggiungono dati di esempio alla tabella degli utenti. Si noti che i dati contengono valori duplicati.

Possiamo interrogare la tabella come mostrato:

Seleziona * dagli utenti;

Questo dovrebbe tornare:

SQL Selezionare illustrazione distinta

Per selezionare tutte le colonne ma eliminare i record duplicati, possiamo fare:

Seleziona Distinta first_name, last_name, stato, attivo dagli utenti;

La query sopra dovrebbe filtrare tutti i record duplicati e restituire solo quelli unici. Un output di esempio è come mostrato:

Per selezionare distinto su una colonna specifica, è possibile utilizzare la clausola distinta. Ad esempio, per selezionare record distinti usando la colonna First_name, possiamo fare:

Seleziona distinto su (first_name) first_name, last_name, stato, attivo dagli utenti;

I filtri di query sopra per i record univoci utilizzando la colonna First_name.

Se si desidera calcolare il numero di record distinti in un set di risultati, è possibile utilizzare la clausola distinta con la funzione di conteggio. Un esempio è come mostrato:

Seleziona Conteggio (Distinto First_name) dagli utenti;

Il codice sopra dovrebbe restituire il numero di record univoci utilizzando la colonna First_name. Un output di esempio è come mostrato:

Chiusura

Il tutorial sopra ha discusso della clausola distinta in SQL e come usarla per filtrare per i record unici all'interno di una tabella.

Grazie per aver letto!!