Back to Microsoft Power BI Data Analyst PL-300 questions

Scenario-based practice

Hard Difficulty Questions

Practise Microsoft Power BI Data Analyst PL-300 practice questions — original exam-style scenarios covering every exam domain, with detailed explanations, wrong-answer analysis, and common exam traps.

20
scenario questions
PL-300
exam code
Microsoft
vendor

Scenario guide

How to approach hard difficulty questions

These are the questions most candidates get wrong. They require connecting multiple concepts, reading tricky output, or knowing edge-case behaviour that isn't on most study cards. Practising them trains you to operate under uncertainty — a necessary skill on the real exam.

Quick answer

Hard Difficulty Questions questions test whether you can apply the concept in context, not just recognise a definition.

How the topic appears in realistic exam-style scenarios.

Which detail in the question changes the correct answer.

How to eliminate plausible but wrong options.

How to connect the question back to the wider exam objective.

Related practice questions

Related PL-300 topic practice pages

Scenario questions usually connect to one or more exam topics. Use these links to review the underlying concepts behind the scenario.

Practice set

Practice scenarios

Question 1hardmulti select
Full question →

A company has a Power BI dataset that includes a table 'Orders' with columns: OrderID, CustomerID, OrderDate, ShipDate, and Amount. They want to create a measure that calculates the number of orders shipped within 3 days of the order date. Which THREE of the following steps are necessary to create this measure?

Question 2hardmultiple choice
Full question →

A Power BI report contains a table visual that displays employee names and their total sales. The data model includes an Employee table with columns: EmployeeID, Name, Department, and HireDate. The Sales table has columns: SaleID, EmployeeID, Amount, and SaleDate. The relationship between Employee and Sales is one-to-many. The user wants to see only employees who have made at least one sale. However, the table shows all employees, including those with no sales (blank Amount). What is the most likely reason?

Question 3hardmultiple choice
Full question →

You manage a Power BI deployment that uses deployment pipelines. After promoting content from Development to Test, you notice that the Test workspace dataset uses a different data source than expected. What is the most likely reason?

Question 4hardmulti select
Full question →

Which THREE steps should you perform to deploy a Power BI solution from development to production using deployment pipelines?

Question 5hardmultiple choice
Full question →

Your Power BI dataset uses DirectQuery to an Azure SQL Database. Users complain that the report is slow. You need to improve query performance without changing the data source. What should you do?

Question 6hardmulti select
Full question →

Which THREE factors should you consider when planning the deployment of Power BI content to a large enterprise with multiple regions?

Question 7hardmultiple choice
Read the full NAT/PAT explanation →

You are a Power BI administrator for a large organization. A team has published a shared dataset to a Premium workspace. They use an XMLA endpoint to programmatically refresh the dataset daily. Recently, the refresh started failing with the error: 'The operation was canceled because the session was terminated by a concurrent operation.' The dataset is not partitioned. You need to ensure the refresh completes without errors. What should you do?

Question 8hardmultiple choice
Full question →

You are reviewing the deployment configuration for a Power BI dataset. The exhibit shows a JSON snippet of the dataset settings. You need to ensure that data is refreshed twice a day at 6:00 AM and 6:00 PM UTC. However, the refresh fails at both scheduled times. What is the most likely cause?

Exhibit

Refer to the exhibit.

{
  "version": "1.0",
  "datasetSettings": {
    "refreshSchedule": {
      "frequency": "Daily",
      "times": ["06:00", "18:00"],
      "enabled": true,
      "localTimeZone": "UTC"
    },
    "directQuery": {
      "enableDirectQuery": false
    }
  },
  "dataSources": [
    {
      "name": "SalesDB",
      "connectionString": "Server=sqlsrv01;Database=Sales;Integrated Security=SSPI;",
      "credentialType": "Windows",
      "gatewayId": "gateway-cluster-01"
    }
  ]
}
Question 9hardmultiple choice
Full question →

A Power BI administrator reviews the JSON configuration for a dataset named SalesDataset. The dataset is deployed to a Premium capacity workspace. The data source is an on-premises SQL Server. The administrator notices that the dataset has never refreshed successfully. Based on the exhibit, what is the most likely cause of the refresh failure?

Exhibit

Refer to the exhibit.

```json
{
  "dataset": {
    "name": "SalesDataset",
    "defaultMode": "Push",
    "refreshSchedule": {
      "enabled": true,
      "frequency": "Weekly",
      "days": ["Monday"],
      "times": ["02:00"]
    },
    "dataSources": [
      {
        "type": "Sql",
        "connectionString": "Server=sqlserver01;Database=SalesDB;Integrated Security=SSPI"
      }
    ]
  }
}
```
Question 10hardmultiple choice
Full question →

During data refresh in Power BI, an error occurs: 'The column 'OrderID' of the table 'Orders' contains a duplicate value and this column is part of a primary key.' The table 'Orders' is imported from an Azure SQL database. What is the most likely cause of this error?

Question 11hardmulti select
Full question →

You have a Power BI dataset that uses DirectQuery to an Azure Synapse Analytics dedicated SQL pool. You need to improve query performance. Which THREE actions should you take?

Question 12hardmultiple choice
Full question →

You are using Power Query to combine data from multiple Excel files in a SharePoint folder. Each file has a sheet named 'Sales'. The columns across files are identical but occasionally a file has extra columns. You need to ensure the combined table contains only the common columns across all files. Which Power Query step should you use?

Question 13hardmultiple choice
Full question →

You are configuring a Power BI dataset with incremental refresh. The above JSON shows part of the M script parameters. The dataset uses a single SQL Server data source. You need to ensure that incremental refresh works correctly. What must you do?

Exhibit

Refer to the exhibit.
```json
{
  "dataSources": [
    {
      "name": "SalesDB",
      "connectionString": "Data Source=sqlserver.contoso.com;Initial Catalog=SalesDB;Integrated Security=SSPI;"
    }
  ],
  "parameters": [
    {
      "name": "StartDate",
      "currentValue": "2023-01-01"
    }
  ]
}
```
Question 14hardmultiple choice
Full question →

You are designing a data model for a retail company. The source system has a Sales table with columns: Date, StoreID, ProductID, SalesAmount. You need to create a date dimension table that includes all dates from the Sales table. Which DAX expression should you use to create the date table?

Question 15hardmultiple choice
Full question →

You are designing a data model for a sales analysis report. The source data includes a Sales table with columns: OrderID, CustomerID, ProductID, OrderDate, Quantity, and UnitPrice. You also have a Customers table and a Products table. Which approach best optimizes query performance and storage?

Question 16hardmultiple choice
Full question →

Refer to the exhibit. The Power Query M code imports a CSV file. The import succeeds, but the 'OrderDate' column shows some dates as null even though they appear valid in the CSV. What is the most likely cause?

Exhibit

Refer to the exhibit.

let
    Source = Csv.Document(File.Contents("C:\Data\Sales.csv"),[Delimiter=",", Columns=5, Encoding=1252, QuoteStyle=QuoteStyle.Csv]),
    #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"OrderDate", type date}, {"Amount", type number}}),
    #"Replaced Value" = Table.ReplaceValue(#"Changed Type","null",null,Replacer.ReplaceValue,{"Product"}),
    #"Filtered Rows" = Table.SelectRows(#"Replaced Value", each [Amount] > 0)
in
    #"Filtered Rows"
Question 17hardmultiple choice
Full question →

You are reviewing a Power BI data source configuration in the data source settings. The exhibit shows the JSON representation of a data source. Which issue might arise from this configuration?

Exhibit

Refer to the exhibit.
```json
{
  "dataSources": [
    {
      "name": "SalesDB",
      "connectionDetails": {
        "server": "sqlsrv-prod.database.windows.net",
        "database": "SalesDB",
        "authenticationKind": "Key",
        "options": {
          "CommandTimeout": 600,
          "CreateNavigationProperties": false
        }
      }
    }
  ]
}
```
Question 18hardmultiple choice
Full question →

You are reviewing a Power Query M expression that transforms column types. The 'SalesAmount' column contains values like '1,234.56' (with a comma as thousands separator). After applying this transformation, what is the likely result?

Exhibit

Refer to the exhibit.
```
Table.TransformColumnTypes(Source,{{"SalesAmount", type number},
{"OrderDate", type datetime},
{"CustomerID", type text}})
```
Question 19hardmulti select
Full question →

Which THREE actions in Power Query Editor can improve the performance of data refresh? (Select three.)

Question 20hardmultiple choice
Full question →

You are debugging a Power Query that imports a CSV file. The exhibit shows the M code. The CSV file contains a header row and data. Some rows have a comma inside a quoted field (e.g., "Smith, John"). What issue will arise from this code?

Exhibit

Refer to the exhibit.
```
let
    Source = Csv.Document(File.Contents("C:\data\sales.csv"),[Delimiter=",", Columns=5, Encoding=1252, QuoteStyle=QuoteStyle.None]),
    #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"OrderDate", type datetime}, {"Amount", type number}})
in
    #"Changed Type"
```

These PL-300 practice questions are part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style PL-300 questions with detailed explanations, topic-based practice, mock exams, readiness tracking, and study analytics.