多个窗口功能可以应用到同一个分区吗?(如果我用的词不正确,请纠正我。 2 G6 E0 h1 l" W- L* k例如你可以 r5 e: V( l7 n9 n# v' T' f
SELECT name,first_value() over (partition by name order by date) from table1但是有没有办法做类似的事情: % a8 [0 G" i5 y5 lSELECT name,(first_value() as f,last_value() as l (partition by name order by date)) from table1在同一个窗口应用两个函数? a5 W& h" k0 H0 t/ [) Z, C% t参考:http :! K/ R0 }; f4 t: z0 {) B
//postgresql.ro/docs/8.4/static/tutorial- 4 O5 C) A4 {) x8 M# h; ]window.html * z7 v' O a9 e2 U& I m8 ]4 M9 x- w7 N; s. }" z7 R解决方案: & ~: O/ k) ] _/ ]/ {# t) ]
你不仅可以使用每个选择的窗口吗? ! p$ v8 l5 Z7 ~( ?7 T) q* o就像是/ ^5 Y% P/ J B
SELECT 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你也可以从你的参考中做到这一点 ) d, ]# T5 V' j3 z7 a6 M* {SELECT sum(salary) OVER w,avg(salary) OVER wFROM empsalaryWINDOW w AS (PARTITION BY depname ORDER BY salary DESC)