当前位置:首页 > 数据库 > Sql Server

sql如何做到查询时同时更新数据

优良自学吧提供sql如何做到查询时同时更新数据,sql怎么做到查询时同时更新数据?思考了一天,新手过来求救了。。。。 大致的需求:从表A中查找前100条 type=0的数据,并将查询到的数据的type修改为1 存储过程是一定的,但select的数据结果怎么保存?只能用临时表吗?,只需要更新前的 SELECT TOP(100) *&

sql怎么做到查询时同时更新数据?
思考了一天,新手过来求救了。。。。
大致的需求:从表A中查找前100条 type=0的数据,并将查询到的数据的type修改为1
存储过程是一定的,但select的数据结果怎么保存?只能用临时表吗?

------解决思路----------------------
只需要更新前的
SELECT TOP(100) * FROM a WHERE type = 0
UPDATE TOP(100) a SET type = 1  WHERE type = 0

否则UPDATE (Transact-SQL)有例子,还可以用表变量
USE AdventureWorks2012;
GO
DECLARE @MyTableVar table (
    SummaryBefore nvarchar(max),
    SummaryAfter nvarchar(max));
UPDATE Production.Document
SET DocumentSummary .WRITE (N'features',28,10)
OUTPUT deleted.DocumentSummary, 
       inserted.DocumentSummary 
    INTO @MyTableVar
WHERE Title = N'Front Reflector Bracket Installation';
SELECT SummaryBefore, SummaryAfter 
FROM @MyTableVar;
GO

------解决思路----------------------
结合OUTPUT 就可以达到很多效果了

只是不明白你确切的意思
------解决思路----------------------
没看明白你什么意思 查询出来不就是为了更新吗? 直接UPDATE 后面加WHERE不就完了?

(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
本站所有内容来自互联网,若本站收录的信息无意侵犯了贵司版权,请给我们来信(ylzx8cn@163.com),我们会及时处理和回复,谢谢