2011-06-07 169 views
8

是否有可能做类似的规定:带左连接的输出子句,如何?

DELETE TOP(1) m 
FROM MyTable m 
OUTPUT deleted.* 
LEFT JOIN MyOtherTable ON MyOtherTable.SomeColumn=s.SomeColumn 

我知道这个工程:

DELETE TOP(1) 
FROM MyTable 
OUTPUT deleted.* 

而且这也可以(但无意义):

DELETE TOP(1) m 
FROM MyTable m 
LEFT JOIN MyOtherTable ON m.SomeColumn=MyOtherTable.SomeColumn 

回答

21

移动OUTPUT条款到JOIN

DELETE TOP(1) m 
OUTPUT deleted.* 
FROM MyTable m 
LEFT JOIN MyOtherTable ON MyOtherTable.SomeColumn=s.SomeColumn 
+2

好吧,现在我觉得很蠢:) – Benoittr 2011-06-07 14:16:21

+1

我们都去过那里了! – 2011-06-07 14:17:03

+0

6分钟,你会得到你的答案接受。 – Benoittr 2011-06-07 14:18:35