O'Reilly logo

Microsoft® SQL Server 2012 Unleashed by Alex T. Silverstein, Chris Gallelli, Paul T. Bertucci, Ray Rankins

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Insert over DML

In SQL Server 2008, the OUTPUT clause was expanded to allow it to be used within Data Manipulation Language (DML) statements within the context of an INSERT...SELECT statement.

For example, assume you are running a MERGE statement and you want the output of this to be put into a separate audit or processing table. This can be done by executing the MERGE statement with an OUTPUT clause, which is incorporated as a derived table in the SELECT clause of an INSERT statement.

To demonstrate this capability, create the following table for storing the data:

if OBJECT_ID('inventory_audit') is not null    drop table inventory_auditgoCREATE TABLE inventory_audit( Action     varchar(10) not null, Src_ProductID     varchar(6) ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required