回答

收藏

多个窗口函数应用于同一分区

技术问答 技术问答 463 人阅读 | 0 人回复 | 2023-09-14

多个窗口功能可以应用到同一个分区吗?(如果我用的词不正确,请纠正我。
+ X% Q/ u, l( y/ i4 l( Z; d例如你可以
4 w! S1 F7 I. E; T' m4 C, i2 qSELECT name,first_value() over (partition by name order by date) from table1但是有没有办法做类似的事情:
& X/ {2 i! h! ^+ g7 \SELECT name,(first_value() as f,last_value() as l (partition by name order by date)) from table1在同一个窗口应用两个函数?( }: E0 U7 ~* l! ^' f8 t! J# L
参考:http :
' ^% H1 ?1 V; r) v5 m//postgresql.ro/docs/8.4/static/tutorial-
& j0 N( \/ _9 R) U' Bwindow.html
. q$ h; E5 d* b8 |/ g                                                                7 J# Z; w; X6 E; ], A2 e
    解决方案:                                                               
8 J9 x  s( @- n2 _' _" Z( M5 L                                                                你不仅可以使用每个选择的窗口吗?
' w& o$ B! y) X( l. |* u( q就像是
4 _2 e' i9 x2 @/ c! l; w3 NSELECT  name,        first_value() OVER (partition by name order by date) as f,        last_value() OVER (partition by name order by date) as l from table1你也可以从你的参考中做到这一点# n; s6 T8 N% u5 G4 Y
SELECT sum(salary) OVER w,avg(salary) OVER wFROM empsalaryWINDOW w AS (PARTITION BY depname ORDER BY salary DESC)
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则