如果在更新数据的时候,update语句之后没加Where语句,该怎么办?不要着急,下面就教您使用逐条更新数据的SQL语句写法,供您参考。
逐条更新数据的SQL语句可以方便不小心忘记更新数据少加Where语句的朋友,下面就为您介绍逐条更新数据的SQL语句写法,供您参考。
- declare@tidint
- declare@fidint
- declare@iint
- declare@jint
- set@j=(selectcount(*)fromtbl1.dbo.dnt_topics)
- set@i=1
- while@i<@j
- begin
- set@tid=(selecttidfrom(selectROW_NUMBER()over(orderbytidasc)asRow,tid,fidfromdnt_topics)asspwhereRow=@i)
- set@fid=(selectfidfrom(selectROW_NUMBER()over(orderbytidasc)asRow,tid,,fidfromdnt_topics)asspwhereRow=@i)
- update
- tbl2.dbo.dnt_topics
- set
- fid=@fid
- where
- tid=@tid
- set@i=@i+1
其中,@tid表示更新限制的条件,@fid表示要更新的数据,定义@i和@j是为了方便方便循环更新,在这T_SQL语句中用了SQL2005自带的函数ROW_NUMBER(),
【编辑推荐】
教您如何进行SQL跨表更新
SQL中IS NULL的语法
SQL中if语句的用法示例
巧用SQL server临时表
速学如何定义SQL存储过程
转载请说明出处
知优网 » 逐条更新数据的SQL语句写法(更新语句sql一条数据)
知优网 » 逐条更新数据的SQL语句写法(更新语句sql一条数据)