在单个查询中选择并更新

我有一个联系我们表包含名称emailid phoneno消息repliedmessage作为字段,默认情况下,回复消息字段为空后回复特定消息我正在更新该字段但同时我也想检索其他值也像名称和使用select语句的emailid     
已邀请:
您是说要更新多行还是只更新一行? 如果要更新多行,可以将受影响的行ID选择到临时表中,执行更新,然后在更新的表上返回tmp表的ID的连接。 如果要更新单行,只需在更新后对该行执行选择。 除了情境逻辑在以后明确表明它是必需的之外,同时尝试两个操作的可维护性是不好的。 您可以在表上始终使用简单的LastUpdated DATETIME字段。然后你只需要一个变量,你设置为getdate()并在更新期间使用。更新后,只返回LastUpdated与datetime变量匹配的每一行。 例如:
declare @opTime datetime
set @opTime = getdate()

update .... (...., LastUpdated) values (....., @opTime)

select * from ... where LastUpdated = @opTime
    

要回复问题请先登录注册