Les clauses DISTINCT et ALL fournissent une manière de gérer les doublons sur des ensembles de champs obtenus à partir d'une commande SELECT.

La clause DISTINCT sélectionne chaque ligne distincte du résultat de la requête en éliminant les doublons, soit des lignes dont toutes les valeurs de champs sont parfaitement égales.

La commande ALL indique que les doublons peuvent apparaître dans le résultat d'une requête, elle constitue la clause par défaut de la commande SELECT.

SELECT DISTINCT | ALL nom_champ FROM nom_table
Exemple
SELECT DISTINCT Livre FROM Librairie

' retourne
ORACLE SQL : THE ESSENTIAL REFERENCE (EN ANGLAIS)
ORACLE SQL* LOADER : THE DEFINITIVE GUIDE (EN ANGLAIS)
INITIATION A SQL - COURS ET EXERCICES CORRIGES
SQL
MAITRISEZ SQL
KIT DE FORMATION MICROSOFT SQL 
        SERVER 2000 ADMINISTRATION SYSTEME


SELECT ALL Livre FROM Librairie

' retourne
ORACLE SQL : THE ESSENTIAL REFERENCE (EN ANGLAIS)
ORACLE SQL* LOADER : THE DEFINITIVE GUIDE (EN ANGLAIS)
INITIATION A SQL - COURS ET EXERCICES CORRIGES
SQL
SQL
MAITRISEZ SQL
KIT DE FORMATION MICROSOFT SQL 
        SERVER 2000 ADMINISTRATION SYSTEME

SELECT nom, adresse FROM personnes
' retourne
DUPONT 1a rue des Cocotiers
JEAN-BON 25 avenue du Général Leclerc
DELAY 48 boulevard des  Hêtres
DUPONT 1a rue des Cocotiers

SELECT DISTINCT nom, adresse FROM personnes
' retourne
DUPONT 1a rue des Cocotiers
JEAN-BON 25 avenue du Général Leclerc
DELAY 48 boulevard des  Hêtres