Siamo su: Scrivici una e-mail
Realizzazione siti codice Mysql

DISTINCT elimina i record ridondanti, cioè che hanno tutti i campi specificati nella clausola DISTINCT uguali nelle varie righe.
GROUP BY è utilizzata in combinazione con le funzioni di aggregazione  e raggruppa il recordset in base ai valori dei campi specificati nella clausola GROUP BY.
Nella maggior parte dei casi GROUP BY e DISTINCT sono simili, ma la differenza è che DISTINCT non consente di utilizzare le funzioni di aggregazione, GROUP BY, oltre che permettere di usare funzioni di aggregazione, consente di specificare un numero diverso di campi da quello indicato nella clausola SELECT.

Quindi, come si fa a decidere quale delle due clausole  sare?
DISTINCT è più semplice da scrivere e leggere se non si sta aggregando i dati.
GROUP BY è necessario se si utilizzano funzioni di aggregazione dei dati, ma in molti casi è sostituibile a DISTINCT.
Se non si usano funzioni di aggregamento dei dati è possibile scegliere una o l’altra clausola.

Le funzioni di aggregazione eseguono un calcolo su un set di valori e restituiscono un singolo valore. Ad eccezione della funzione COUNT, le funzioni di aggregazione ignorano i valori Null.

Scrivi un commento