Vensterkadercomponent
Van toepassing op: Databricks SQL Databricks Runtime
Hiermee geeft u een schuifsubset van rijen binnen de partitie waarop de statistische of analytische vensterfunctie werkt.
Syntaxis
{ frame_mode frame_start |
frame_mode BETWEEN frame_start AND frame_end } }
frame_mode
{ RANGE | ROWS }
frame_start
{ UNBOUNDED PRECEDING |
offset_start PRECEDING |
CURRENT ROW |
offset_start FOLLOWING }
frame_end
{ offset_stop PRECEDING |
CURRENT ROW |
offset_stop FOLLOWING |
UNBOUNDED FOLLOWING }
Parameters
frame_mode
RIJEN
Indien opgegeven, wordt het kader van het schuifvenster uitgedrukt in rijen die voorafgaan aan of volgen op de huidige rij.
BEREIK
Indien opgegeven, moet de vensterfunctie een ORDER BY clausule gebruiken met een enkele expressie
obExpr
.De grenzen van het schuifvenster worden vervolgens uitgedrukt als een verschuiving van de
obExpr
huidige rij.
frame_start
De beginpositie van het schuifvensterframe ten opzichte van de huidige rij.
NIET-GEBONDEN VOORAFGAANDE
Hiermee geeft u op dat het vensterframe begint aan het begin van de partitie.
offset_start VOORGAANDE
Als de modus is
ROWS
,offset_start
is het positieve letterlijke getal dat bepaalt hoeveel rijen vóór de huidige rij het frame begint.Als de modus is
RANGE
,offset_start
is dit een positieve letterlijke waarde van een type die kan worden afgetrokken vanobExpr
. Het frame begint bij de eerste rij van de partitie dieobExpr
groter of gelijk is aanobExpr - offset_start
bij de huidige rij.HUIDIGE RIJ
Hiermee geeft u op dat het frame begint bij de huidige rij.
offset_start VOLGENDE
Als de modus is
ROWS
,offset_start
is het positieve letterlijke getal dat bepaalt hoeveel rijen er achter de huidige rij zijn. Als de modus isRANGE
,offset_start
is dit een positieve letterlijke waarde van een type waaraan kan worden toegevoegdobExpr
. Het frame begint bij de eerste rij van de partitie dieobExpr
groter of gelijk is aanobExpr + offset_start
bij de huidige rij.
frame_stop
Het einde van het schuifvensterkader ten opzichte van de huidige rij.
Als dit niet is opgegeven, stopt het frame bij de HUIDIGE RIJ. Het einde van het schuifvenster moet groter zijn dan het begin van het raamkader.
offset_start VOORGAANDE
Als frame_mode is
ROWS
,offset_stop
is het positieve letterlijke getal dat bepaalt hoeveel rijen vóór de huidige rij het frame stopt. Als frame_mode isRANGE
,offset_stop
is dit een positieve letterlijke waarde van hetzelfde type alsoffset_start
. Het frame eindigt op de laatste rij van de partitie waarvanobExpr
de partitie kleiner is dan of gelijk is aanobExpr - offset_stop
bij de huidige rij.HUIDIGE RIJ
Hiermee geeft u op dat het frame stopt bij de huidige rij.
offsetStop FOLLOWING
Als frame_mode is
ROWS
,offset_stop
is het positieve letterlijke getal dat bepaalt hoeveel rijen voorbij zijn aan de huidige rij, eindigt het frame. Als frame_mode isRANGE
,offset_stop
is dit een positieve letterlijke waarde van hetzelfde type alsoffset_start
. Het frame eindigt op de laatste rij van de partitie dieobExpr
kleiner is dan of gelijk is aanobExpr + offset_stop
bij de huidige rij.NIET-AFHANKELIJKE VOLGENDE
Hiermee geeft u op dat het vensterframe stopt aan het einde van de partitie.