oracle 取出分組中的第一條資料 ____oracle
來源:互聯網
上載者:User
ORACEL 的分析函數:可以取出分組中第一個(最後一個)的資料 first_value() over(partition by ... order by ...)
last_value() over(partition by ... order by ...)
create
table ATEM
(
CO1
VARCHAR2( 10 ),
CO2
INTEGER
)
insert
into atem(co1,co2)
values( 'a' , 1 );
insert
into atem(co1,co2)
values( 'a' , 2 );
insert
into atem(co1,co2)
values( 'a' , 3 );
insert
into atem(co1,co2)
values( 'a' , 4 );
insert
into atem(co1,co2)
values( 'a' , 1 );
insert
into atem(co1,co2)
values( 'b' , 1 );
insert
into atem(co1,co2)
values( 'b' , 2 );
insert
into atem(co1,co2)
values( 'c' , 1 );
insert
into atem(co1,co2)
values( 'd' , 1 );
insert
into atem(co1,co2)
values( 'd' , 2 );
select
distinct(FIRST_VALUE(a.co2)OVER(
PARTITION
BY a.co1
ORDER
BY a.co2))
as co2,a.co1
from atem a // FIRST_VALUE(a.co2)OVER(
PARTITION
BY a.co1
ORDER
BY a.co2) // 在表中以 a.co1 分組,並在分組中以 a.co2 排序,最後要得到分組中 a.co2 的資料