pbPassingBI
/

Power BI full mock exam

12 questions sampled across all 4 modules. Timed like the real thing: answer everything, then review the explanations.

  1. Where should you remove unneeded columns?

    1. In DAX with a measure
    2. In Power Query before load
    3. In the report visual
    4. In the Service after publishing

    Answer: In Power Query before load — Columns removed in Power Query never enter the model, so they cost nothing in size or refresh.

  2. Which action commonly breaks query folding?

    1. Filtering rows
    2. Removing columns
    3. Adding an index column
    4. Renaming a column

    Answer: Adding an index column — An index column has no SQL equivalent, so folding stops there and later steps run locally.

  3. What does query folding mean?

    1. Collapsing steps
    2. Power Query translates steps into a query the source runs
    3. Compressing the file
    4. Merging queries

    Answer: Power Query translates steps into a query the source runs — It keeps the work in the database.

  4. Why is a dedicated Date table required?

    1. To make reports look tidier
    2. Time intelligence functions depend on it
    3. It reduces file size
    4. DirectQuery needs it

    Answer: Time intelligence functions depend on it — Functions like SAMEPERIODLASTYEAR require a contiguous, marked date table to work correctly.

  5. Why avoid setting cross-filter direction to Both globally?

    1. It is slower to refresh
    2. It creates ambiguous filter paths and possible circular dependencies
    3. It breaks DirectQuery
    4. It disables slicers

    Answer: It creates ambiguous filter paths and possible circular dependencies — Ambiguity means the engine may resolve paths unexpectedly; CROSSFILTER in a measure is safer.

  6. USERELATIONSHIP must be used inside:

    1. SUMX
    2. CALCULATE
    3. FILTER
    4. A calculated column

    Answer: CALCULATE — It is a filter modifier.

  7. You want a percent of the total the user has currently selected via slicers. Use:

    1. ALL
    2. ALLSELECTED
    3. REMOVEFILTERS
    4. KEEPFILTERS

    Answer: ALLSELECTED — ALLSELECTED clears the visual filter but keeps slicer and page filters — percent of visible total.

  8. Prior-year measures return blank for recent months. Most likely cause?

    1. Wrong DAX function
    2. The Date table does not cover complete years
    3. Too many relationships
    4. DirectQuery mode

    Answer: The Date table does not cover complete years — Time intelligence needs a contiguous date table spanning full years, or edge periods break.

  9. Why prefer DIVIDE over the / operator?

    1. It is faster
    2. It returns blank instead of erroring on divide by zero
    3. It handles text
    4. It respects slicers

    Answer: It returns blank instead of erroring on divide by zero — DIVIDE has built-in divide-by-zero handling and an optional alternate result.

  10. You want a summary visual to send users to a detail page carrying the selected product. Use:

    1. Bookmark
    2. Drillthrough
    3. Drill down
    4. Sync slicer

    Answer: Drillthrough — Drillthrough passes the selected context to a dedicated detail page.

  11. Which function should dynamic RLS use to identify the viewer?

    1. USERNAME()
    2. USERPRINCIPALNAME()
    3. CUSTOMDATA()
    4. LOOKUPVALUE()

    Answer: USERPRINCIPALNAME() — USERPRINCIPALNAME returns the UPN consistently in both Desktop and the Service.

  12. Drill-through differs from drill-down because it:

    1. Is faster
    2. Navigates to another page carrying the selected context
    3. Only works on dates
    4. Requires a hierarchy

    Answer: Navigates to another page carrying the selected context — Drill-down stays within one visual.