Oracle分析函式-5

Steven1981發表於2007-09-27
學習筆記[@more@]

1. first_value()last_value()

select fire_date,deptno,sum(sal),
first_value(sum(sal)) over(partition by fire_date order by sum(sal)) fir_sale,
first_value(sum(sal)) over(partition by fire_date order by sum(sal) desc) last_sale
from hyf_t
group by fire_date, deptno

FIRE_DATE

DEPTNO

SUM(SAL)

FIR_SALE

LAST_SALE

200502

0

50

50

54

200502

1

51

50

54

200502

2

52

50

54

200502

3

53

50

54

200502

4

54

50

54

200503

1

101

101

250

200503

0

250

101

250

200504

2

102

102

104

200504

3

103

102

104

200504

4

104

102

104

顯示每月每部門SAL彙總,SAL最高和最低的部門

first_value() 指的是分組排序後該組的第一條記錄,last_value()指的是分組排序後該組的最後一條記錄.2. RANGEROWS引數的指定(必須與ORDER BY 一起使用)

前面我們所進行的操作都是當前行與該行前面的所有行進行了比較. 可我們有時候需要當前行與該行前面的N行範圍進行比較即可. 這裡需要RANGEROWS引數; rows ange 用法基本有以下四種,

rows 2 preceding 表示當前行以前該行的前兩行
rows between
2 preceding and 2 following 表示當前行,該行的前兩行以及該行的後丙行
range
20 preceding 表示當前行以前該行以前值範圍在20以內的.
range between
50 preceding and 10 following表示當前行以前該行以前和該行以後值範圍在5010以內的.:

select deptno,ename,sal,
min(sal) over(partition by deptno order by sal
rows 2 preceding) min_sal,
count(*) over(partition by deptno order by sal
rows between 2 preceding and 2 following) count1,
max(sal) over(partition by deptno order by sal
range 20 preceding ) max_sal,
count(*) over(partition by deptno order by sal
range between 50 preceding and 10 following) count_sal
from hyf_t

DEPTNO

ENAME

SAL

MIN_SAL

COUNT1

MAX_SAL

COUNT_SAL

0

I_CDEF1

50

50

3

50

1

0

TRUSTED_LIST$

100

50

4

100

2

0

AUDIT$

150

50

4

150

2

0

JOBSEQ

200

100

3

200

2

1

I_CDEF2

51

51

3

51

1

1

PROPS$

101

51

4

101

2

1

I_AUDIT

151

51

4

151

2

1

JOB$

201

101

3

201

2

2

I_CDEF3

52

52

3

52

1

2

COM$

102

52

4

102

2

2

PENDING_TRANS$

152

52

4

以上MIN_SAL顯示了分組該行以及前兩行中最小的值.

COUNT1顯示了分組該行以及前後兩行中的累計

Max_SAL顯示了分組該行以前範圍在20之前的最大值

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/703656/viewspace-972638/,如需轉載,請註明出處,否則將追究法律責任。

上一篇: Oracle分析函式-4
下一篇: Oracle分析函式-6
Oracle分析函式-5
請登入後發表評論 登入
全部評論

相關文章