选择后更新列

时间:2013-01-11 16:14:48

标签: sql select procedure

我有一个MS SQL存储过程(SP):

SELECT *  
FROM tblA  
WHERE stateID = 1  
ORDER BY DateTime DESC

仍然在同一个SP中,如何更新SELECT语句返回的每一行的stateID列? SP仍然从SELECT语句返回行。

谢谢!

2 个答案:

答案 0 :(得分:1)

你可以这样做,因为这将返回相同的行

update tblA
set col = value  
WHERE stateID = 1  

答案 1 :(得分:1)

如果返回的结果中有唯一标识符,则可以执行此操作。

UPDATE tblA SET stateID = 2 WHERE download_id in (select download_id from FROM tblA  
WHERE stateID = 1  
ORDER BY DateTime DESC)