PrepAway - Latest Free Exam Questions & Answers

Your database contains two tables named DomesticSalesOrders and InternationalSalesOrders. Both tables…

Your database contains two tables named DomesticSalesOrders and InternationalSalesOrders. Both tables

contain more than 100 million rows. Each table has a Primary Key column named SalesOrderId. The data in the two tables is distinct from one another.

Business users want a report that includes aggregate information about the total number of global sales an

d total sales amounts.

You need to ensure that your query executes in the minimum possible time.

Which query should you use?

A.

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAmount) AS TotalSalesAmount

FROM (

SELECT SalesOrderId, SalesAmount

FROM

DomesticSalesOrders

UNION ALL

SELECT SalesOrderId, SalesAmount

FROM InternationalSalesOrders

) AS p

B.

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAmount) AS TotalSalesAmount

FROM (

SELECT SalesOrderId, SalesAmount

FROM DomesticSal

esOrders

UNION

SELECT SalesOrderId, SalesAmount

FROM InternationalSalesOrders

) AS p

C.

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAmount) AS TotalSalesAmount

FROM DomesticSalesOrders

UNION

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAm

ount) AS TotalSalesAmount

FROM InternationalSalesOrders

D.

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAmount) AS TotalSalesAmount

FROM DomesticSalesOrders

UNION ALL

SELECT COUNT(*) AS NumberOfSales, SUM(SalesAmount) AS TotalSalesAmount

FROM

InternationalSalesOrders

Explanation:

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

Reference: http://blog.sqlauthority.com/2009/03/11/sql-server-difference-between-union-vs-union-all-optimalperformance-comparison/

QUESTION


Leave a Reply