2009-09-12 63 views
3

我想獲取由更新命令更新的行,但結果只有更新行的數量,但我希望整行作爲選擇命令,所以請告訴我,如果任何人有任何想法。 我正在嘗試這個。如何獲取更新表上的更新(不計數)行

update newTable set readKey='1' where id in (select id from newTable where id='1111') 

該命令的結果將只有行沒有不完整的行,但我希望整行顯示。

+0

你使用哪個數據庫系統? – 2009-09-12 06:00:42

回答

8

首先,你可以寫你的代碼simplier:

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服務器2005/2008,那麼你可以使用OUTPUT條款:

update newTable 
set  readKey='1' 
output inserted.id, 
     inserted.readKey as readKey, 
     deleted.readKey as prevReadKey 
where id in ('1111'); 
+0

非常感謝。 – Abhishek 2009-09-12 06:36:40