SQL 查询每组的第一条记录

时间:2015-09-19 22:31:50   收藏:0   阅读:336
CREATE TABLE [dbo].[test1](
    [program_id] [int] NULL,
    [person_id] [int] NULL
) ON [PRIMARY]

/*查询每组分组中第一条记录*/
select * from test1 as a
where a.person_id in 
( select  top 1 person_id from test1
where program_id = a.program_id);

select * from (  
   select ROW_NUMBER() over(partition by program_id order by person_id) as num,* from test1) as t
   where num=1

 

原文:http://www.cnblogs.com/changshuo/p/4822260.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!