Structured Query Language: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 298:
* ''espressione_condizionale'' rappresenta l'elenco delle condizioni, ovvero dei requisiti che un campo deve rispettare per poter essere prelevato dall' interrogazione (le condizioni sono specificate mediante gli operatori di confronto, connettori logici e comparatori come ''between'', ''in'', ''like'', ''is null''); ''lista_colonne'' è la colonna o le colonne che devono essere prese come riferimento per l'ordinamento dei dati in uscita.
 
Di default il comando ''selectSELECT'' agisce con il metodo ''allALL'', ma specificando ''distinctDISTINCT'' (o ''UNIQUE'' a seconda delle implementazioni) è possibile eliminare dai risultati le righe duplicate.
 
La clausola ''GROUP BY'' serve per raggruppare per [[tupla]] i risultati mentre la relativa condizione ''HAVING'' serve per filtrarne i risultati.
 
<source lang="sql">
SELECT fornitore, sum(totale_fattura)
FROM fatture
GROUP BY fornitore
HAVING sum(totale_fattura)>10.000
</source>
 
In questo caso vengono filtrati i fornitori che hanno un totale fatturato maggiore di 10.000.
 
La clausola ''ORDER BY'' serve per ordinare i risultati in base a uno o più campi.
 
''LimitLIMIT'' (o ''topTOP'', a seconda delle implementazioni) limita il numero delle righe fornite: LIMIT 10 prende le prime 10 righe della mia tabella. È anche possibile scartare un certo numero di righe all'inizio dei risultati aggiungendo un parametro a ''LIMIT'' o la clausola ''OFFSET''.
 
L'SQL standard non prevede alcun ordinamento se non si specifica la clausola ''ORDER BY'', pertanto senza di essa anche ''LIMIT'' ha un effetto imprevedibile.<br />