Funzioni analitiche a finestra
Le funzioni analitiche comprendono l'aggregazione per finestre, l'aggregazione per rapporti, il ritardo e il vantaggio, il primo e l'ultimo, la classifica e le famiglie di righe. La tabella seguente descrive le parole chiave della funzione analitica.
Sintassi | Descrizione |
---|---|
TUTTO | Applica la funzione analitica a tutti i valori. Questo valore è quello predefinito e non è necessario specificarlo. |
ASC | DESC | Specifica la sequenza di ordinamento, ascendente o discendente. |
TRA. E | Specifica i punti di inizio e fine della finestra. La prima espressione (prima di e) specifica l'inizio; la seconda espressione (dopo e) specifica la fine. |
RIGA CORRENTE | Come punto di partenza, specifica che la finestra inizia dalla riga o dal valore corrente. Come punto finale, specifica che la finestra termina alla riga o al valore corrente. |
DISTINCT | Specifica che la funzione aggrega i risultati per ogni valore unico. DISTINCT non è supportato per le funzioni FIRST_VALUE, LAST_VALUE, LEAD o LAG. Non è inoltre supportato per le funzioni STDDEV, STDDEV_POP, STDDEV_SAMP, VARIANCE, VAR_POP O VAR_SAMP in un aggregato raggruppato o a finestre. |
ESCLUDERE LA RIGA CORRENTE | Specifica l'esclusione della riga corrente. |
Escludi gruppo | Specifica l'esclusione della riga corrente e di tutte le righe ad essa collegate. Le cravatte si verificano quando c'è una corrispondenza nella colonna o nelle colonne dell'ordine. |
NON ESCLUDERE NESSUN ALTRO | Specifica di non escludere alcuna riga. Questo valore è quello predefinito se non si specifica alcuna esclusione. |
ESCLUDERE LE LEGHE | Specifica l'esclusione di tutte le righe che sono collegate alla riga corrente (righe di pari livello), ma mantiene la riga corrente. |
NULLS {FIRST | LAST} | Specifica se i valori nulli vengono visualizzati prima o dopo i valori non nulli nell'ordinamento. Per impostazione predefinita, i valori nulli vengono ordinati come se fossero inferiori a qualsiasi valore non nullo; cioè, NULLS FIRST è l'impostazione predefinita per l'ordine DESC e NULLS LAST altrimenti. |
ORDER BY | Specifica come vengono ordinati i dati all'interno della partizione. È possibile ordinare i valori su più chiavi, ciascuna definita da una sequenza di ordinamento. |
OVER | Indica che la funzione opera su un insieme di risultati di query calcolati dopo le clausole FROM, WHERE e HAVING. Utilizzare over per definire la finestra di righe da includere nella funzione. |
Partizione per | Suddivide il risultato della query in gruppi basati su una o più colonne. Se si omette questa clausola, la query gestisce il risultato come una singola partizione. |
RIGHE | INTERVALLO | Definisce la finestra come righe fisiche o come intervallo logico. Per utilizzare l'intervallo tra, è necessario specificare la clausola order by. |
SEGUITO NON VINCOLATO | Specifica che la finestra termina all'ultima riga della partizione. Se non c'è una clausola di partizione per, la fine è l'ultima riga dell'insieme di dati. |
PRECEDENTE NON VINCOLATO | Specifica che la finestra inizia dalla prima riga della partizione. Se non c'è una clausola di partizione per, l'inizio è la prima riga dell'insieme di dati. |