SQL中类似For循环处理的实例
原本CreatDate的yyyy-MM-dd hh:mm:ss:fff格式被变成了yyyy-MM-dd格式,下面就将对SQL进行类似For循环处理,该方法供您参考,希望对您学习SQL中的For循环能有所帮助。
- declare @itemnumber int --定义需要循环的次数
- declare @tagint int --定义标志字段,用于结束循环
- set @tagint=1
- select @itemnumber = count(distinct Creater) from Demo_TestTable where isnull(Creater,'')<>'' And
- DATEDIFF(DAY,CreatDate,GETDATE())<1
- if(@itemnumber>0)
- begin
- while @tagint<=@itemnumber
- begin
- waitfor delay '00:00:01' --每隔一秒再执行 可用参数变量替换
- Update Demo_TestTable set CreatDate=GETDATE() where Creater =(
- Select Creater from (
- select Creater,ROW_NUMBER() over(order by Creater) as RowID from Demo_TestTable where
- isnull(Creater,'')<>'' And DATEDIFF(DAY,CreatDate,GETDATE())<1 group by Creater
- ) TableA
- where TableA.RowID=@tagint
- )
- set @tagint=@tagint+1
- end
- end
【编辑推荐】
对存储过程代替SQL语句的讨论
SQL聚合函数之Avg 函数
SQL中MAX()和MIN()函数的使用
SQL中求和函数SUM()的应用实例
TOP字句加SQL变量的相关问题
版权声明:
作者:后浪云
链接:https://www.idc.net/help/319457/
文章版权归作者所有,未经允许请勿转载。
THE END