更新窗口函数的OVER参数描述:都是可选,但是最少二选一,否则没有意义。

This commit is contained in:
mba1398
2022-06-26 18:41:04 +08:00
committed by GitHub
parent 8b730453d8
commit b507693589

View File

@@ -11,16 +11,20 @@
窗口函数的通用形式:
```sql
<> OVER ([PARTITION BY <>]
ORDER BY <>)  
<> OVER ([ PARTITION BY <> ]
[ ORDER BY <> ])  
```
[ ]中的内容可以省略。
窗口函数最关键的是搞明白关键字 **PARTITON BY****ORDER BY** 的作用。
**PARTITON BY** 是用来分组,即选择要看哪个窗口,类似于 GROUP BY 子句的分组功能,但是 PARTITION BY 子句并不具备 GROUP BY 子句的汇总功能,并不会改变原始表中记录的行数。
**PARTITON BY** 可选参数,是用来分组,即选择要看哪个窗口,类似于 GROUP BY 子句的分组功能,但是 PARTITION BY 子句并不具备 GROUP BY 子句的汇总功能,并不会改变原始表中记录的行数。
**ORDER BY** 是用来排序,即决定窗口内,是按那种规则(字段)来排序的。
**ORDER BY** 可选参数,是用来排序,即决定窗口内,是按那种规则(字段)来排序的。
**注意**
虽然 **PARTITON BY****ORDER BY** 都是可选参数,但是两个参数不能同时没有(最少二选一)。不然, `<窗口函数> OVER( )` 这周用法没用实际意义。
举个栗子: