在Oracle中,OVER函数用于计算窗口函数的值。其参数解析如下:
- PARTITION BY:指定分组的列,即按照哪些列进行分组计算窗口函数的值。
- ORDER BY:指定排序的列,即按照哪些列对分组进行排序。
- ROWS/RANGE:指定窗口的范围,可以是ROWS表示按照行数进行计算,也可以是RANGE表示按照值的范围进行计算。
- UNBOUNDED PRECEDING/FOLLOWING:指定窗口的起始和结束位置,可以是UNBOUNDED PRECEDING表示窗口从第一行开始,也可以是UNBOUNDED FOLLOWING表示窗口直到最后一行结束。
- CURRENT ROW:表示当前行。
- BETWEEN:用于指定窗口的起始和结束位置,例如BETWEEN 1 PRECEDING AND 1 FOLLOWING表示窗口包括当前行及其前后一行。
- AGGREGATE FUNCTION:指定要计算的窗口函数,例如SUM、AVG等。
- ALIAS:为计算的窗口函数指定别名。