逐条更新数据的SQL语句写法

数据库 SQL Server
如果在更新数据的时候,update语句之后没加Where语句,该怎么办?不要着急,下面就教您使用逐条更新数据的SQL语句写法,供您参考。

逐条更新数据的SQL语句可以方便不小心忘记更新数据少加Where语句的朋友,下面就为您介绍逐条更新数据的SQL语句写法,供您参考。

declare @tid int          
declare @fid int  
declare @i int  
declare @j int  
set @j=(select count(*) from tbl1.dbo.dnt_topics)  
set @i=1           
while   @i<@j           
begin               
    set @tid = (select tid from ( select ROW_NUMBER() over (order by tid asc ) as Row, tid,fid from dnt_topics ) as sp  where Row=@i)  
    set @fid=(select fid from ( select ROW_NUMBER() over (order by tid asc ) as Row, tid,,fid from dnt_topics ) as sp  where Row=@i)                   
    update               
        tbl2.dbo.dnt_topics            
    set                    
        fid=@fid           
    where                
        tid=@tid                       
        set @i=@i+1     
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

其中,@tid表示更新限制的条件,@fid表示要更新的数据,定义@i和@j是为了方便方便循环更新,在这T_SQL语句中用了SQL2005自带的函数ROW_NUMBER(),

 

 

【编辑推荐】
教您如何进行SQL跨表更新

SQL中IS NULL的语法

SQL中if语句的用法示例

巧用SQL server临时表

速学如何定义SQL存储过程

责任编辑:段燃 来源: 博客园
相关推荐

2010-09-24 15:58:24

SQL语句逐条更新

2010-09-08 16:38:13

SQL循环语句

2010-09-25 11:32:20

SQL主键约束

2010-09-28 15:07:14

SQL语句

2010-11-09 16:20:46

SQL Server死

2010-09-07 15:12:25

SQL语句优化

2010-09-24 19:23:51

SQL查询时间段

2010-09-28 15:13:10

SQL语句

2010-09-01 15:59:44

SQL删除字段

2010-07-12 17:12:48

SQL Server数

2010-09-28 15:19:13

SQL语句

2010-09-28 11:28:40

SQL字段属性

2010-09-07 11:41:24

SQL语句

2011-04-06 13:38:11

SQL ServerSQL语句

2011-03-21 15:39:31

LAMPPHPSQL

2010-09-26 16:56:14

sql语句

2010-09-27 10:29:14

sql update语

2010-09-25 16:42:45

sql语句

2010-09-07 11:09:33

SQL语句

2010-11-18 09:19:10

Oracle循环语句
点赞
收藏

51CTO技术栈公众号