The answer is that the Year column is stored as text in the database, preventing query folding for the numeric filter. This is correct because query folding requires the data type of the filter predicate to match the source column’s type; when Power Query encounters a numeric comparison like `Year > 2020` against a text column, it cannot translate that operation into the source query language, forcing it to retrieve all rows and apply the filter locally, which drastically slows performance. On the PL-300 exam, this scenario tests your understanding of query folding prerequisites and common performance bottlenecks—a frequent trap is assuming all filters fold automatically, but type mismatches are a primary reason for folding failures. Remember the mnemonic: “Fold only when types hold”—if the column type and filter type don’t align, folding won’t happen.
PL-300 Prepare the data Practice Question
This PL-300 practice question tests your understanding of prepare the data. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
Exhibit
let
Source = Sql.Database("sqlserver01", "SalesDB"),
dbo_Sales = Source{[Schema="dbo",Item="Sales"]}[Data],
#"Filtered Rows" = Table.SelectRows(dbo_Sales, each [Year] >= 2020)
in
#"Filtered Rows"
Refer to the exhibit. You have the above Power Query M expression. You notice that the query is taking a long time to load. You suspect that query folding is not occurring for the filter on the Year column. What is the most likely reason?
Clue words in this question
Noticing these words before you look at the options changes how you read each choice.
Clue: "most likely"
Why it matters: Probability qualifier — the question wants the most probable cause or outcome, not a guaranteed one. Eliminate low-probability options.
let
Source = Sql.Database("sqlserver01", "SalesDB"),
dbo_Sales = Source{[Schema="dbo",Item="Sales"]}[Data],
#"Filtered Rows" = Table.SelectRows(dbo_Sales, each [Year] >= 2020)
in
#"Filtered Rows"
A
The Year column is of type datetime, but the filter is an integer.
Why wrong: Type mismatch can cause folding issues, but Power Query can often handle implicit conversions.
B
The query uses a native SQL query instead of a table reference.
Why wrong: The query uses Table.SelectRows on a table, not a native query.
C
The Year column is stored as text in the database, and Power Query cannot fold the numeric comparison.
If the column is text, the filter 'each [Year] >= 2020' may not fold because the database sees a string comparison. Converting to number might enable folding.
D
The data source is using DirectQuery mode, which prevents folding.
Why wrong: DirectQuery does not prevent folding; it actually encourages it.
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The Year column is stored as text in the database, and Power Query cannot fold the numeric comparison.
Option C is correct because when the Year column is stored as text in the database, Power Query cannot fold a numeric comparison (e.g., `Year > 2020`) into the source query. Query folding requires data type compatibility between the filter predicate and the source column; a text-to-integer comparison forces Power Query to fetch all rows and apply the filter locally, causing slow performance.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
✗
The Year column is of type datetime, but the filter is an integer.
Why it's wrong here
Type mismatch can cause folding issues, but Power Query can often handle implicit conversions.
✗
The query uses a native SQL query instead of a table reference.
Why it's wrong here
The query uses Table.SelectRows on a table, not a native query.
✓
The Year column is stored as text in the database, and Power Query cannot fold the numeric comparison.
Why this is correct
If the column is text, the filter 'each [Year] >= 2020' may not fold because the database sees a string comparison. Converting to number might enable folding.
Clue confirmation
The clue word "most likely" in the question point toward this answer.
Related concept
Read the scenario before looking for a memorised answer.
✗
The data source is using DirectQuery mode, which prevents folding.
Why it's wrong here
DirectQuery does not prevent folding; it actually encourages it.
Common exam traps
Common exam trap: answer the scenario, not the keyword
The trap here is that candidates assume any data type mismatch prevents folding, but the key nuance is that Power Query can fold compatible implicit conversions (e.g., datetime to integer for year comparisons) but cannot fold when the source column is text and the filter is numeric, because the engine lacks a safe folding path for that conversion.
Detailed technical explanation
How to think about this question
Query folding relies on the Power Query engine translating M expressions into source-native queries (e.g., SQL WHERE clauses). When a column is text and the filter is numeric, the engine cannot generate a type-safe predicate like `WHERE CAST(Year AS INT) > 2020` because folding engines typically avoid implicit type conversions that could change semantics or cause errors. In real-world scenarios, this mismatch often occurs when date parts are stored as strings (e.g., '2020') and users apply numeric filters, forcing local evaluation and degrading performance on large datasets.
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.
TExam Day Tips
→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.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A cloud solutions architect for a retail company is evaluating services for a new workload. The correct answer here reflects best practice for the specific scenario described — not a general cloud recommendation. Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option. Cloud exam questions reward reading the constraint carefully: the same technology can be right or wrong depending on the use case.
What to study next
Got this wrong? Here's your next step.
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
Prepare the data — This question tests Prepare the data — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: The Year column is stored as text in the database, and Power Query cannot fold the numeric comparison. — Option C is correct because when the Year column is stored as text in the database, Power Query cannot fold a numeric comparison (e.g., `Year > 2020`) into the source query. Query folding requires data type compatibility between the filter predicate and the source column; a text-to-integer comparison forces Power Query to fetch all rows and apply the filter locally, causing slow performance.
What should I do if I get this PL-300 question wrong?
Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.
Are there clue words in this question I should notice?
Yes — watch for: "most likely". Probability qualifier — the question wants the most probable cause or outcome, not a guaranteed one. Eliminate low-probability options.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
This PL-300 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PL-300 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.