mediummultiple choiceObjective-mapped

A company uses Azure SQL Database for an e-commerce platform. The Orders table has columns: OrderID (primary key, clustered), CustomerID, OrderDate, TotalAmount. Queries frequently filter on CustomerID and a range of OrderDate, and then sort the results by OrderDate in descending order. The queries also return the TotalAmount column. Which indexing strategy will most improve query performance for these operations?

Question 1mediummultiple choice
Full question →

A company uses Azure SQL Database for an e-commerce platform. The Orders table has columns: OrderID (primary key, clustered), CustomerID, OrderDate, TotalAmount. Queries frequently filter on CustomerID and a range of OrderDate, and then sort the results by OrderDate in descending order. The queries also return the TotalAmount column. Which indexing strategy will most improve query performance for these operations?

Answer choices

Why each option matters

Good practice is not just finding the correct option. The wrong answers often show the exact trap the exam wants you to fall into.

A

Best answer

Create a nonclustered index on (CustomerID, OrderDate DESC) with included column TotalAmount

This index directly supports the filter on CustomerID and the range/order on OrderDate, and includes TotalAmount to avoid key lookups, making it the most efficient.

B

Distractor review

Create a nonclustered index on (OrderDate DESC, CustomerID) with included column TotalAmount

This index orders by date first, so for a specific CustomerID, the database would need to scan a potentially large range of dates before applying the CustomerID filter, which is less efficient.

C

Distractor review

Change the clustered index to be on (CustomerID, OrderDate DESC)

Changing the clustered index from the primary key OrderID could disrupt other queries and operations; also, a clustered index on these columns might cause page splits and fragmentation due to sequential inserts by OrderID.

D

Distractor review

Create a nonclustered index on (OrderDate DESC) without including TotalAmount

This index does not filter by CustomerID, so the query would need to scan many rows or perform a key lookup for each row, resulting in poor performance.

Common exam trap

Common exam trap: answer the scenario, not the keyword

Many certification questions include familiar terms but test a specific constraint. Read the exact wording before choosing an answer that is generally true but wrong for this case.

Technical deep dive

How to think about this question

This question should be treated as a scenario, not a definition check. Identify the problem, the constraint and the best action. Then compare each option against those facts.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.
  • Use explanations to understand the rule behind the answer.

TExam Day Tips

  • Underline the problem statement mentally.
  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Related practice questions

Related DP-900 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

More questions from this exam

Keep practising from the same exam bank, or move into a focused topic page if this question exposed a weak area.

Question 1

A data engineer needs to process streaming data from IoT devices and store the results in Azure Data Lake Storage for long-term analytics. The data must be processed in near real-time to detect anomalies and trigger alerts. Which Azure service should the engineer use for stream processing?

Question 2

A data engineer needs to query data stored in CSV files in Azure Data Lake Storage Gen2 using T-SQL in Azure Synapse Analytics, without loading the data into the database. Which feature should they use?

Question 3

A data engineer needs to process raw clickstream data from multiple websites that is stored in Azure Blob Storage as JSON files. The processing must run automatically every hour, transform the data into a structured format for reporting, and handle schema changes in the source data without manual intervention. Which Azure service should be used?

Question 4

A data engineer is designing a data lake architecture in Azure. They plan to first ingest raw data from various sources into a landing zone in Azure Data Lake Storage Gen2. Then they will clean, validate, and deduplicate that data in a second zone. Finally, they will create aggregated, business-ready datasets in a third zone for analysts. This layered approach is known as which architecture?

Question 5

A data engineer needs to transform large datasets stored in Azure Data Lake Storage Gen2 using Python and Apache Spark. They want a serverless compute option that automatically scales and requires no cluster management. Which Azure service should they use?

Question 6

A company collects customer feedback forms. Each form contains always-present fields like CustomerID and SubmissionDate, but also a free-text Comments field and optional fields like Rating or ProductCategory that vary between forms. How should this data be classified?

FAQ

Questions learners often ask

What does this DP-900 question test?

Read the scenario before looking for a memorised answer.

What is the correct answer to this question?

The correct answer is: Create a nonclustered index on (CustomerID, OrderDate DESC) with included column TotalAmount — The optimal index must support both the filter predicates (CustomerID and OrderDate range) and the sort order (OrderDate descending). A nonclustered index on (CustomerID, OrderDate DESC) with included column TotalAmount allows the query to seek directly on CustomerID, then scan only the relevant OrderDate range in descending order without a separate sort operation, and retrieve TotalAmount from the included column without key lookups. Option B (OrderDate DESC, CustomerID) is less efficient because it requires scanning a larger range of OrderDate first before filtering by CustomerID. Option C would change the clustered index, which is not advisable as OrderID is already clustered and changing it could impact other queries. Option D lacks CustomerID filtering, leading to a inefficient scan.

What should I do if I get this DP-900 question wrong?

Then try more questions from the same exam bank and focus on understanding why the wrong options are tempting.

Discussion

Loading comments…

Sign in to join the discussion.