关闭

[置顶] 查询 按某一字段分组,组内排序,top n条数据

366人阅读 评论(0) 收藏 举报

查询tt表中,department分组的,组内code排序的,的每组头2条数据

方法1
-------------------排序用code字段来搞定
select *
from
 (select code,department,[name],(select count(*)
        from tt
        where department = a.department and code<=a.code
        ) as arrcount
 from tt as a
 ) as b
where
b.arrcount<=2
order by b.department

 

方法2

------------------排序用name字段来搞定

select   *  
  from   tt   a  
  where   (select   count(*)   from   tt   where   department=a.department   and   name<=a.name)<=2 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3329次
    • 积分:76
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档