Cláusula da moldura da janela
Aplica-se a: Databricks SQL Databricks Runtime
Especifica um subconjunto deslizante de linhas dentro da partição na qual a função de janela agregada ou analítica opera.
Sintaxe
{ 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 }
Parâmetros
frame_mode
LINHAS
Se especificado, a moldura da janela deslizante é expressa em termos de linhas anteriores ou posteriores à linha atual.
GAMA
Se especificado, a função window deve especificar uma cláusula ORDER BY com uma única expressão
obExpr
.Os limites da janela deslizante são então expressos como um deslocamento da
obExpr
linha atual.
frame_start
A posição inicial da moldura da janela deslizante em relação à linha atual.
PRECEDENTE ILIMITADO
Especifica que o quadro da janela começa no início da partição.
offset_start PRECEDENTES
Se o modo for
ROWS
,offset_start
é o número literal integral positivo que define quantas linhas antes da linha atual o quadro inicia.Se o modo for
RANGE
,offset_start
é um valor literal positivo de um tipo que pode ser subtraído doobExpr
. O quadro começa na primeira linha da partição para a qualobExpr
é maior ou igual àobExpr - offset_start
linha atual.LINHA ATUAL
Especifica que o quadro começa na linha atual.
offset_start SEGUINTE
Se o modo for
ROWS
,offset_start
é o número literal integral positivo que define quantas linhas passam para a linha atual que o quadro inicia. Se o modo forRANGE
,offset_start
é um valor literal positivo de um tipo que pode ser adicionado aoobExpr
. O quadro começa na primeira linha da partição para a qualobExpr
é maior ou igual àobExpr + offset_start
linha atual.
frame_stop
A extremidade da moldura da janela deslizante em relação à linha atual.
Se não for especificado, o quadro para na LINHA ATUAL. A extremidade da janela de correr deve ser maior do que o início da moldura da janela.
offset_start PRECEDENTES
Se frame_mode for
ROWS
,offset_stop
é o número literal integral positivo que define quantas linhas antes da linha atual o quadro para. Se frame_mode forRANGE
,offset_stop
é um valor literal positivo do mesmo tipo queoffset_start
. O quadro termina na última linha da partição para a qualobExpr
é menor ou igual àobExpr - offset_stop
linha atual.LINHA ATUAL
Especifica que o quadro para na linha atual.
offsetPare SEGUINDO
Se frame_mode for
ROWS
,offset_stop
é o número literal integral positivo que define quantas linhas passam para a linha atual o quadro termina. Se frame_mode forRANGE
,offset_stop
é um valor literal positivo do mesmo tipo queoffset_start
. O quadro termina na última linha da partição para a qualobExpr
é menor ou igual àobExpr + offset_stop
linha atual.SEGUIMENTO ILIMITADO
Especifica que o quadro da janela para no final da partição.