Eliminazione dei duplicati con la parola chiave DISTINCT
La parola chiave DISTINCT elimina le righe duplicate dai risultati di un'istruzione SELECT. Se viene omessa, vengono restituite tutte le righe, incluse quelle duplicate. Ad esempio, se si selezionano tutti gli ID dei prodotti di ProductInventory
senza specificare la parola chiave DISTINCT, verranno restituite 1069 righe.
Tramite la parola chiave DISTINCT, è possibile eliminare i duplicati e visualizzare solo gli ID dei prodotti univoci:
USE AdventureWorks;
GO
SELECT DISTINCT ProductID
FROM Production.ProductInventory
La query restituisce 432 righe.
Importante: |
---|
L'output delle istruzioni che includono la parola chiave DISTINCT varia a seconda delle regole di confronto della colonna o dell'espressione a cui viene applicata tale parola chiave. |
Quando si specifica la parola chiave DISTINCT, i valori Null vengono considerati duplicati. Se si specifica la parola chiave DISTINCT in un'istruzione SELECT, il set di risultati include sempre un solo valore NULL, indipendentemente dal numero di valori Null rilevati.
[!NOTA] Per compatibilità con lo standard SQL-92 e con altre implementazioni di Microsoft SQL Server 2005, la parola chiave ALL può richiedere esplicitamente tutte le righe. La parola chiave ALL viene utilizzata per impostazione predefinita, pertanto non è necessario specificarla.