条件选择问题
有一个表及数据
------
例子1:
id(int) duanS (char(1))
1 Y
2 Y
3 N
4 Y
例子1:
id(int) duanS (char(1))
1 Y
2 Y
3 N
4 N
--------------------------------------
现在有一个变量@cc(int),值@cc=2{对应id=2}。
请教一SQL语句,使达到以下重新给@cc赋值的功能:
1.id > @cc
2.最近(方向向下)的duanS值为“Y”的ID号赋值给@cc
3.如果不存在(方向向下)的duanS值为“Y”的ID号,那么@cc=@cc+1
--------------------------------------
sql语句的结果:
在例子1中:@cc=4
在例子2中:@cc=3
--
请教sql语句!
------解决方案--------------------以id是顺序排列理解
declare @cc int
set @cc=2
if exist (select top 1 id from 例子1 where id> @cc order by id )
select select top 1 @cc=id from 例子1 where id> @cc order by id
else
set @cc=@cc+1