SQL批量修改数据

1、UPDATE a SET WtNo=b.NO from WT_Task a INNER JOIN WT_BasicInformation b ON a.WtId=b.ID;
2、UPDATE a SET a.WtNo=b.NO FROM WT_Task a,WT_BasicInformation b WHERE a.WtId=b.ID;
好的代码就和美食一样,都是需要时间烹饪出来的!

本文实例讲述了SQLServer批量更新两个关联表数据的方法。分享给大家供大家参考,具体如下:

方式1:

UPDATE a SET WtNo=b.NO
from WT_Task a
INNER JOIN WT_BasicInformation b ON a.WtId=b.ID

方式2:

UPDATE a SET a.WtNo=b.NO
FROM WT_Task a,WT_BasicInformation b
WHERE a.WtId=b.ID;

 

 

希望本文所述对大家SQL Server数据库程序设计有所帮助。

UPDATE blog SET
 title = CASE id
 WHEN 8 THEN '888'
 WHEN 9 THEN '9999'
 WHEN 10 THEN '101010'
 END,
 content = CASE id
 WHEN 8 THEN 'myvalue21'
 WHEN 9 THEN 'myvalue22'
 WHEN 10 THEN 'myvalue23'
 END
WHERE id IN (8,9,10)
————————————————




SQL常用语句 替换语句 批量修改、增加、删除字段内容

sql替换语句,用该命令可以整批替换某字段的内容,也可以批量在原字段内容上加上或去掉字符。

命令总解:update 表的名称 set 此表要替换的字段名=REPLACE(此表要替换的字段名, ‘原来内容’, ‘新内容’)

如 UPDATE Whir_ProductRelese SET ReleseName=REPLACE(ReleseName,’aa’,’bb’)

举例说明:

1)把backupfile表里url的字段内容里为aa的字符全部改为bb。

  update backupfile set url=REPLACE(url,’aaa’,’bbb)

2)根据条件增加字段的内容,如把file_number=1的记录的logical_name字段的内容前面加上tmp,后面加上end。

  update backupfile set logical_name=REPLACE(logical_name,logical_name,’tmp’+logical_name+’ end ‘) where file_number=1

3)根据条件去掉指定记录的前面2个字符。

  update backupfile set logical_name=REPLACE(logical_name,logical_name,SUBSTRING(logical_name,3,len(logical_name)-2)) where file_number=1

4)根据条件去掉指定记录的后面4个字符。

  update backupfile set logical_name=REPLACE(logical_name,logical_name,SUBSTRING(logical_name,1,len(logical_name)-4)) where file_number=2

如有不清楚的可以先用select语句验证是否达成自己想要的效果再进行替换:

SELECT   REPLACE(替换字段,’原内容’,’新内容’) from 表名;  

update 表名 set 替换字段=(REPLACE(替换字段,’原内容’,’新内容’))

5)   批量新增数据,把A表数据批量查出并添加到A表中

      insert into [dbo].[T_Channel_banklist](C_ID,Name,State)  (select C_ID,Name,1 from [T_Channel_banklist] where C_id=1101)

查询上一条下一条

–如:(正序)当前MenuID=2,那么上一条则是1(ORDER BY MenuID ASC),下一条是3(ORDER BY MenuID DESC)
–正序(1,2,3)
–上一条
SELECT TOP 1 * FROM tbl_SoleHome_Menu WHERE MenuID>2 ORDER BY MenuID ASC
–当前
SELECT TOP 1 * FROM dbo.tbl_SoleHome_Menu WHERE MenuID=2
–下一条
SELECT TOP 1 * FROM tbl_SoleHome_Menu WHERE MenuID<2 ORDER BY MenuID DESC
–倒序(3,2,1)
–上一条
SELECT TOP 1 * FROM tbl_SoleHome_Menu WHERE MenuID<2 ORDER BY MenuID DESC
–当前
SELECT TOP 1 * FROM dbo.tbl_SoleHome_Menu WHERE MenuID=2
–下一条
SELECT TOP 1 * FROM tbl_SoleHome_Menu WHERE MenuID>2 ORDER BY MenuID ASC

 

 


												
点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注