高手进-挠头问题,请教各位大神(自动递增字段)
有如下结构的表,主键是ID和CODE
ID   CODE   NAME
1     A     A1
2     A     NO
3     A     A3
4     A     A4  
1     B     B1
2     B     NO
3     B     B3
检索出NAME不等于“NO”的数据,并根据CODE的值重新编写ID的值(递增+1).
也就是说结果集中,当CODE的值变化时,ID的值重新从1开始递增。
同过SQL文将结果集整理成
ID   CODE   NAME
1     A     A1
2     A     A3
3     A     A4  
1     B     B1
2     B     B3
小弟人穷没有大钱,请各位大神帮忙。
------解决方案--------------------
SQL code
select row_number()over(partition by CODE order by CODE ,Name) as ID,
CODE , Name from 表 
where name <> 'NO'