sql-server-2000 – sql server在分组时获取第一个值

前端之家收集整理的这篇文章主要介绍了sql-server-2000 – sql server在分组时获取第一个值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个表格,其中列a不一定具有不同的值,列b具有多个不同值的每个值.我想得到一个结果,每个值只出现一次,得到b的第一个找到的值为a的值.我怎么在sql server 2000中这样做?

示例表:

a  b
1  aa
1  bb
2  zz
3  aa
3  zz
3  bb
4  bb
4  aa

通缉结果:

a  b
1  aa
2  zz
3  aa
4  bb

另外,我必须补充一点,b列中的值都是文本值.我更新了示例来反映这一点.
谢谢

解决方法

;with cte as
    (
  select *,row_number() over(partition by a order by a) as rn
  from yourtablename
    )    
    select  
a,b
from cte 
where rn = 1

猜你在找的MsSQL相关文章