日期:2014-05-18  浏览次数:20490 次

如何查询某字段相同的值,相同条数大于6的,,只取6条!!
就是A字段的值相同的记录,如果相同记录大于6条,,我就只要6条。。取的6条,可以按B字段从大到小的前6条。 如果复杂的话。。 就任意6条也行,就是取出的6条不要任何条件。。

------解决方案--------------------
SQL code

--2005

select *
from(
    select *,rid=row_number() over (partition by a order by b desc)
    from tb
)t
where rid <= 6

------解决方案--------------------
SQL code

--2000
select *
from tb t
where [主键字段] in (select top 6 [主键字段] from tb where a = t.a order by b desc)