我可以过滤OUTPUT子句中的结果而不将其存储在表中吗?

时间:2013-03-19 15:54:29

标签: sql-server tsql

我正在研究一些SQL并使用OUTPUT子句进行调试。我有一个显示已删除记录的DELETE FROM table OUTPUT DELETED.*

有没有办法添加一个WHERE子句,所以我不必专门创建一个表来存储OUTPUT以过滤这些结果?它有一些JOIN,因此我需要在任何临时表上指定60多列。

1 个答案:

答案 0 :(得分:0)

您只需要定义要跟踪的列(在#temp或@variable或甚至是真实的表中)。

请参阅我的示例:

http://granadacoder.wordpress.com/2008/12/10/sqlserver20052008-output-clause-in-insertupdatedelete-statements/

文章代码示例:

delete from dbo.EmployeeTable
output deleted.EmpKey into dbo.AuditTable (EntityKey)
 where EmpAge > 0;