– Order the results in descending order from SalesTerritoryID to ProductID.

– The solution must use the existing SELECT clause and FROM clause.

Which code segment should you use? To answer, type the correct code in the answer area.

Correct Answer:

SELECT SalesTerritoryID,

ProductID,

AVG(UnitPrice),

MAX(OrderQty),

MAX(DiscountAmount)

FROM Sales.Details

GROUP BY SalesTerritoryID , ProductID

ORDER BY SalesTerritoryID DESC, ProductID DESC

QUESTION 42

You have a database that contains the tables shown in the exhibit. (Click the Exhibit button).

You need to create a query for a report. The query must meet the following requirements:

– NOT use object delimiters. Return the most recent orders first.

– Use the first initial of the table as an alias.

– Return the most recent order date for each customer.

– Retrieve the last name of the person who placed the order.

– Return the order date in a column named MostRecentOrderDate that appears as the last column in the report.

The solution must support the ANSI SQL-99 standard. Which code segment should you use? To answer, type the correct code in the answer area.

Correct Answer:

SELECT C.LastName, MAX(O.OrderDate) AS MostRecentOrderDate

FROM Customers AS C INNER JOIN Orders AS O

ON C.CustomerID = O.CustomerID

GROUP BY C.LastName

ORDER BY O.OrderDate DESC

QUESTION 43

You have an XML schema collection named Sales.InvoiceSchema. You need to declare a variable of the XML type named XML1. The solution must ensure that XML1 is validated by using Sales.InvoiceSchema. Which code segment should you use? To answer, type the correct code in the answer area.

Correct Answer:

DECLARE @XML1 XML(Sales.InvoiceSchema)

Explanation:

http://msdn.microsoft.com/en-us/libra ry/ms176009.aspx

QUESTION 44

You have a database that contains the tables as shown in the exhibit. (Click the Exhibit button.)

You need to create a query that returns a list of products from Sales.ProductCatalog. The solution must meet the following requirements:

– UnitPrice must be returned in descending order.

– The query must use two-part names to reference the table.

– The query must use the RANK function to calculate the results.

– The query must return the ranking of rows in a column named PriceRank.

– The list must display the columns in the order that they are defined in the table.

– PriceRank must appear last.

Which code segment should you use? To answer, type the correct code in the answer area.

RANK() OVER (PARTITION BY ProductCatalog.UnitPrice ORDER BY ProductCatalog.UnitPrice DESC) AS PriceRank

FROM Sales.ProductCatalog

ORDER BY ProductCatalog.UnitPrice DESC

QUESTION 45

You have a database that contains the tables shown in the exhibit. (Click the Exhibit button.)

You have an application named Appl. You have a parameter named @Count that uses the int data type. App1 is configured to pass @Count to a stored procedure. You need to create a stored procedure named usp_Customers for Appl. Usp_Customers must meet the following requirements:

– NOT use object delimiters.

– Minimize sorting and counting.

– Return only the last name of each customer in alphabetical order.

– Return only the number of rows specified by the @Count parameter.

– The solution must NOT use BEGIN and END statements.

Which code segment should you use? To answer, type the correct code in the answer area.

Correct Answer:

CREATE PROCEDURE usp_Customers @Count int

AS

SELECT TOP(@Count) Customers.LastName

FROM Customers

ORDER BY Customers.LastName

QUESTION 46

You use a Microsoft SQL Server 2012 database that contains a table named BlogEntry that has the following columns:

Id is the Primary Key. You need to append the “This is in a draft stage” string to the Summary column of the recent 10 entries based on the values in EntryDateTime. Which Transact-SQL statement should you use?

A.

UPDATE TOP(10) BlogEntry

SET Summary.WRITE(N’ This is in a draft stage’, NULL, 0)

B.

UPDATE BlogEntry

SET Summary = CAST(N’ This is in a draft stage’ as nvarchar(max))

WHERE Id IN(SELECT TOP(10) Id FROM BlogEntry ORDER BY EntryDateTime DESC)

C.

UPDATE BlogEntry

SET Summary.WRITE(N’ This is in a draft stage’, NULL, 0) FROM (

SELECT TOP(10) Id FROM BlogEntry ORDER BY EntryDateTime DESC) AS s

WHERE BlogEntry.Id = s.ID

D.

UPDATE BlogEntrySET

Summary.WRITE(N’ This is in a draft stage’, 0, 0)

WHERE Id IN(SELECT TOP(10) Id FROM BlogEntry ORDER BY EntryDateTime DESC)

Correct Answer:C

QUESTION 47

You use Microsoft SQL Server 2012 to develop a database application. You create a stored procedure named DeleteJobCandidate. You need to ensure that if DeleteJobCandidate encounters an error, the execution of the stored procedure reports the error number. Which Transact-SQL statement should you use?

A.

DECLARE @ErrorVar INT;

DECLARE @RowCountVar INT;

EXEC DeleteJobCandidate

SELECT @ErrorVar = @@ERROR, @RowCountVar = @@ROWCOUNT;

IF (@ErrorVar <> 0)

PRINT N’Error = ‘ + CAST(@@ErrorVar AS NVARCHAR(8)) +

N’, Rows Deleted = ‘ + CAST(@@RowCountVar AS NVARCHAR(8));

GO

B.

DECLARE @ErrorVar INT;

DECLARE @RowCountVar INT;

EXEC DeleteJobCandidate

SELECT @ErrorVar = ERROR_STATE(), @RowCountVar = @@ROWCOUNT;

IF (@ErrorVar <> 0)

PRINT N’Error = ‘ + CAST(ERRORSTATE() AS NVARCHAR(8)) +

N’, Rows Deleted = ‘ + CAST(@@RowCountVar AS NVARCHAR(8));

GO

C.

EXEC DeleteJobCandidate

IF (ERROR_STATE() != 0)

PRINT N’Error = ‘ + CAST(@@ERROR AS NVARCHAR(8)) +

N’, Rows Deleted = ‘ + CAST(@@ROWCOUNT AS NVARCHAR(8));

GO

D.

EXEC DeleteJobCandidate

PRINT N’Error = ‘ + CAST(@@ERROR AS NVARCHAR(8)) +

N’, Rows Deleted = ‘ + CAST(@@ROWCOUNT AS NVARCHAR(8));

GO

Correct Answer:A

Explanation:

http://msdn.microsoft.com/en-us/library/ms190193.aspx

http://msdn.microsoft.com/en-us/library/ms188790.aspx

QUESTION 48

You use Microsoft SQL Server 2012 to create a stored procedure as shown in the following code segment. (Line numbers are included for reference only.)

The procedure can be called within other transactions. You need to ensure that when the DELETE statement from the HumanResourcesJobCandidate table succeeds, the modification is retained even if the insert into the Audit.Log table fails. Which code segment should you add to line 14?

A.

IF @@TRANCOUNT = 0

B.

IF (XACT_STATE ( ) ) = 0

C.

IF (XACT_STATE ( ) ) = 1

D.

IF @@TRANCOUNT = l

Correct Answer:C

Explanation:

http://msdn.microsoft.com/en-us/library/ms189797.aspx

http://msdn.microsoft.com/en-us/library/ms187967.aspx

QUESTION 49

A table named Profits stores the total profit made each year within a territory. The Profits table has columns named Territory, Year, and Profit. You need to create a report that displays the profits made by each territory for each year and its preceding year. Which Transact-SQL query should you use?

A.

SELECT Territory, Year, Profit,

LAG(Profit, 1, 0) OVER(PARTITION BY Year ORDER BY Territory) ASNextProfit

FROM Profits

B.

SELECT Territory, Year, Profit,

LAG(Profit, 1, 0) OVER(PARTITION BY Territory ORDER BY Year) ASNextProfit

FROM Profits

C.

SELECT Territory, Year, Profit,

LEAD(Profit, 1, 0) OVER(PARTITION BY Territory ORDER BY Year) ASNextProfit

FROM Profits

D.

SELECT Territory, Year, Profit,

LEAD(Profit, 1, 0) OVER(PARTITION BY Year ORDER BY Territory) ASNextProfit

FROM Profits

Correct Answer:B

Explanation:

http://msdn.microsoft.com/en-us/library/hh231256.aspx

http://msdn.microsoft.com/en-us/library/hh213125.aspx

QUESTION 50

You use Microsoft SQL Server 2012 to develop a database application. Your application sends data to an NVARCHAR(MAX) variable named @var. You need to write a Transact-SQL statement that will find out the success of a cast to a decimal (36,9). Which code segment should you use?select