首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

重复行的标记设定解决方案

2012-04-26 
重复行的标记设定在下有个查询想设置,请求帮忙。如下表:ABC123124211212213.......经查询后,如下图显示ABCD

重复行的标记设定
在下有个查询想设置,请求帮忙。
如下表:
A B C
1 2 3
1 2 4
2 1 1
2 1 2
2 1 3
.......

经查询后,如下图显示
A B C D
1 2 3  
1 2 4 Y
2 1 1
2 1 2 Y  
2 1 3 Y
.......

过滤的条件为:
若A,B列的对应的行数值相同的时候,后续的行都会显示带有‘Y’的标记,首行无需显示,以区分该行重复

[解决办法]

SQL code
--> --> (Roy)生成測試數據 declare @T table([A] int,[B] int,[C] int)Insert @Tselect 1,2,3 union allselect 1,2,4 union allselect 2,1,1 union allselect 2,1,2 union allselect 2,1,3;with aas(Select *,ROW_NUMBER()over(order by (select 1)) as d from @T)select a.A,a.B,a.C,[d]=Case when b.A Is not null then 'Y' else '' endfrom aleft join a as b on a.d=b.d+1 and a.a=b.a and a.b=b.b/*A    B    C    d1    2    3    1    2    4    Y2    1    1    2    1    2    Y2    1    3    Y*/ 

热点排行