我想获取更新命令更新的行,但结果只是更新的行数,但我想要整个行,如select命令,所以请告诉我是否有人对它有任何想法。 我正在尝试这个。
update newTable set readKey='1' where id in (select id from newTable where id='1111')
此命令的结果将只是行没有完整的行,但我希望显示整行。
答案 0 :(得分:8)
首先,您可以为您编写更简单的代码:
update newTable set readKey='1' where id in ('1111')
在SQL Server中,这将仅返回已更新的行数,但仅在未设置SET NOCOUNT
时才会返回。
基本上你可以做第二个查询,在第一个查询之后显示结果:
update newTable set readKey='1' where id in ('1111');
select * from newTable where id in ('1111');
或者,如果这是SQL Server 2005/2008,那么您可以使用OUTPUT子句:
update newTable
set readKey='1'
output inserted.id,
inserted.readKey as readKey,
deleted.readKey as prevReadKey
where id in ('1111');