Your database contains tables named Products and ProductsPriceLog. The Products table contains columns
named ProductCode and Price. The ProductsPriceLog table contains columns named ProductCode, OldPrice,
and NewPrice. The ProductsPriceLog table stores theprevious price in the OldPrice column and the new price
in the NewPrice column. You need to increase the values in the Price column of all products in the Products
table by 5 percent. You also need to log the changes to the ProductsPriceLog table. Which Transact-SQLquery
should you use?
A.
UPDATE Products SET Price = Price * 1.05
OUTPUT inserted.ProductCode, deleted.Price, inserted.Price
INTO ProductsPriceLog(ProductCode, OldPrice, NewPrice)
B.
UPDATE Products SET Price = Price * 1.05
OUTPUT inserted.ProductCode, inserted.Price, deleted.Price
INTO ProductsPriceLog(ProductCode, OldPrice, NewPrice)
C.
UPDATE Products SET Price = Price * 1.05
OUTPUT inserted.ProductCode, deleted.Price, inserted.Price *
INTO ProductsPriceLog(ProductCode, OldPrice, NewPrice)
D.
UPDATE Products SET Price = Price * 1.05
INSERT INTO ProductsPriceLog (ProductCode, CldPnce,NewPrice;
SELECT ProductCode, Price, Price * 1.05 FROM Products
Explanation:
Verified answer as correct.
Reference: http://msdn.microsoft.com/en-us/library/ms177564.aspx
Answer A
D would work as well. I don’t understand why A is the correct answer.
D adds an additional 5% as the prices have already been updated, so this is incorrect
A