Riepilogo: in questo tutorial, imparerai come utilizzare la clausola Oracle GROUP BY
per raggruppare le righe in gruppi.
Introduzione alla clausola Oracle GROUP BY
La clausolaGROUP BY
viene utilizzata in un’istruzioneSELECT
per raggruppare le righe in un insieme di righe di riepilogo in base ai valori di colonne o espressioni. La clausolaGROUP BY
restituisce una riga per gruppo.,
GROUP BY
clausola è spesso utilizzata con funzioni di aggregazione come AVG()
COUNT()
MAX()
MIN()
e SUM()
. In questo caso, la funzione di aggregazione restituisce le informazioni di riepilogo per gruppo. Ad esempio, dati gruppi di prodotti in diverse categorie, la funzione AVG()
restituisce il prezzo medio dei prodotti in ciascuna categoria.,
Quanto segue illustra la sintassi della clausola Oracle GROUP BY
:
La clausola GROUP BY
appare dopo la clausola FROM
., Nel caso In cui WHERE
clausola è presentato, il GROUP BY
clausola deve essere inserita dopo l’ WHERE
clausola, come illustrato nella seguente query:
GROUP BY
clausola di gruppi di righe da valori nelle colonne di raggruppamento come c1
c2
e c3
. La clausolaGROUP BY
deve contenere solo aggregati o colonne di raggruppamento.,
Se si desidera specificare più livelli di raggruppamento che devono essere calcolati contemporaneamente, si utilizza la seguente sintassiROLLUP
:
Si prega di controllare il tutorialROLLUP
per maggiori informazioni.,
Questa affermazione ha lo stesso effetto come la seguente dichiarazione che utilizza il tag DISTINCT
operatore:
B) Oracle GRUPPO con una funzione di aggregazione esempio
L’istruzione seguente restituisce il numero di ordini da parte dei clienti:
In questo esempio, abbiamo raggruppato gli ordini da parte dei clienti e utilizzato il tag COUNT()
funzione deve restituire il numero di ordini al gruppo.,
Per ottenere i dati più significativi, si può partecipare a orders
tabella con i customers
tabella come segue:
Ecco il risultato:
C) Oracle GRUPPO con un’espressione di esempio
L’esempio seguente gruppi di ordini da un anno e restituisce il numero di ordini all’anno.
In questo esempio, abbiamo usato la funzioneEXTRACT()
per ottenere le informazioni sull’anno dalle date dell’ordine.,
A differenza degli esempi precedenti, abbiamo usato un’espressione che restituisce l’anno nella clausolaGROUP BY
.,L’immagine seguente illustra il risultato:
D) Oracle GRUPPO con clausola WHERE esempio
in Questo esempio viene utilizzato il tag GROUP BY
clausola con un WHERE
clausola per restituire il numero di ordini spediti per ogni cliente:
Ecco l’output:
si noti che la Oracle restituisce sempre la condizione del WHERE
clausola prima il GROUP BY
clausola.,
E) Oracle GRUPPO con CUMULATIVO di esempio
La seguente dichiarazione calcola la quantità di vendite e gruppi di loro customer_id
status
e (customer_id
status
):
In questo tutorial, avete imparato a utilizzare Oracle GROUP BY
clausola di righe di gruppo in gruppi.
- Questo tutorial è stato utile?
- Sì