yuyang5212的专栏

技术涂鸦

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

查询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 

阅读更多
个人分类: SQL 整理
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

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

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭