2009-09-08 64 views

回答

1
WITH cte AS (
SELECT * 
FROM <mytable> 
WHERE key = <mykey>) 
DELETE cte 
OUTPUT deleted.*; 

皮膚有這麼多種方法。我經常發表一篇文章,因爲它很可讀。它清楚地將SELECT分離到它自己的查詢表達式中,允許輕鬆創建複雜的查詢。它完全刪除查詢結果。它outputs刪除的行。

下也完全有效,更容易進行簡單的WHERE子句:

DELETE <mytable> 
OUTPUT deleted.* 
WHERE key = <mykey>; 
+0

感謝哥們, 這對我很有用,但是你能告訴我更多一點。 我在告訴你我想做什麼。 我正在開發一個聊天應用程序,所以我想要閱讀新的聊天記錄,並且在同一個實例中,所讀取的聊天內容應該被刪除,這樣纔不會重複。所以請告訴我。 – Abhishek 2009-09-09 04:43:46