Skip to content

Power BI Interview Questions in Delhi

36 practice questions with answers for Power BI interviews in Delhi.

Power BI jobs in Delhi

Delhi NCR has one of India's biggest pools of IT, consulting, banking and start-up jobs. Delhi itself hosts many corporate, government-tech and consulting offices, and most candidates also apply across Noida and Gurgaon, so interviews here mix service-company and product-company styles.

Below are 36 questions that match the mix of service, product and domain employers hiring power bi developers in Delhi.

Solved for DelhiStart practicing
3 QUESTIONS FREESign up to unlock the full question bank and track your progress.Unlock every question and answer, then continue practising company-wise and package-wise.
3 questions free Unlock the rest in seconds
01

Your measure returns an error that a table of multiple values was supplied where a single value was expected. How do you fix it?

Save to ▾
Show answer
This happens when an expression like VALUES or a column reference returns several rows where a scalar is needed, for example in IF or comparison. I would use SELECTEDVALUE with a fallback, wrap the column in an aggregation like MAX or SUM, or use HASONEVALUE to check first. If iteration is needed, use SUMX or another iterator over VALUES instead.
02

How do you set up drill-through to a customer details page?

Save to ▾
Show answer
Create a new page named Customer Details, add visuals showing customer information, orders and trends, and drag Customer Name or Customer ID into the Drill through well in the Visualizations pane. Power BI adds a back button automatically. Users can now right-click a customer in any visual and choose Drill through, Customer Details, and the page opens filtered to that customer.
03

Why should you use DIVIDE instead of the division operator?

Save to ▾
Show answer
DIVIDE(numerator, denominator, alternate) handles division by zero and blank denominators safely, returning blank or the alternate value instead of an error or infinity. It makes measures like margin percentage cleaner without IF checks. The division operator is slightly faster when you are certain the denominator is never zero, but DIVIDE is the safer default in reports.
04

What are tooltips and report page tooltips?

Save to ▾
Show answer
Default tooltips show field values when hovering over a data point. Report page tooltips let you design a small custom page, set as a tooltip page type, showing extra visuals like a mini trend chart for the hovered category. They add detail without cluttering the main page. Keep tooltip pages light because they run queries on every hover.
05

What are query parameters in Power Query?

Save to ▾
Show answer
Parameters are named values used inside queries, such as server name, database, file path or a date range. They let you switch from a development to a production database without editing each query, and they are required for incremental refresh through RangeStart and RangeEnd. Parameters can be changed in the Service under semantic model settings, which helps deployment pipelines between environments.
06

How do you publish a report and share it with business users?

Save to ▾
Show answer
In Desktop, choose Publish and select a workspace. In the Service, set up the semantic model's credentials and scheduled refresh. Then create or update an app from the workspace, choose the reports and audiences, and grant access to user groups. Apps give consumers a clean, stable view while authors keep working in the workspace. Avoid sharing from My workspace for team content.
07

Tell me about a time you handled a data access or security issue.

Save to ▾
Show answer
Situation: a sales user reported seeing another region's numbers after a reorganisation. Task: fix the leak fast. Action: I confirmed the security mapping table had stale entries, removed the user from the wrong row, refreshed the model and then automated the mapping from the HR system with a daily refresh. I informed the data owner. Result: access stayed correct after later reorganisations, and quarterly access reviews were added.
08

How do you use a bridge table for a many-to-many scenario?

Save to ▾
Show answer
For example, accounts can have multiple customers and customers multiple accounts. Create a bridge table with unique Account and Customer pairs. Relate Customer to Bridge one-to-many, and Account to Bridge one-to-many, with the Bridge to Account relationship set to filter in both directions or use CROSSFILTER in measures. Facts relate to Account. Test totals carefully because shared accounts count once per customer.
09

What is the difference between fact and dimension tables?

Save to ▾
Show answer
Fact tables store measurable events at a defined grain, such as one row per order line, with numeric columns like quantity and amount and foreign keys to dimensions. Dimension tables store descriptive attributes used for filtering and grouping, such as product name, category, region or calendar month, with one row per key. Facts are usually long and narrow; dimensions are shorter and wider.
10

What are visual calculations?

Save to ▾
Show answer
Visual calculations are DAX calculations defined directly on a visual and computed on the visual's own aggregated data, rather than on the model. They make running totals, moving averages, percent of parent and comparison with previous rows simpler using functions like RUNNINGSUM, MOVINGAVERAGE and PREVIOUS. They do not add measures to the model, so they suit visual-specific logic but cannot be reused across visuals.
11

What does CALCULATE do?

Save to ▾
Show answer
CALCULATE evaluates an expression in a modified filter context. Its filter arguments can add, replace or remove filters, for example CALCULATE([Total Sales], 'Product'[Category] = "Electronics") replaces any category filter with Electronics. It also performs context transition when used inside a row context, turning the current row into an equivalent filter. It is the most important function in DAX.
12

What are report themes and why use them?

Save to ▾
Show answer
A report theme is a JSON file that sets default colours, fonts, visual styles and backgrounds for all visuals. Using a company theme keeps reports consistent with brand guidelines and saves formatting time, since new visuals adopt it automatically. Themes can be built in Desktop's theme customiser or edited as JSON and shared across the team as a standard.
13

What is the difference between Group By in Power Query and summarising in DAX?

Save to ▾
Show answer
Group By in Power Query aggregates rows at refresh time and stores only the summarised table, reducing model size, which is useful when detail is never needed. Summarising in DAX through measures keeps detail in the model and aggregates dynamically for any filter at query time. Use Power Query grouping for fixed summaries such as monthly snapshots, and DAX measures when users need flexible slicing.
14

What do RELATED and RELATEDTABLE do?

Save to ▾
Show answer
RELATED fetches a value from the one side of a relationship into a row context on the many side, such as RELATED('Product'[Category]) in a Sales calculated column. RELATEDTABLE goes the other way, returning the related rows from the many side for the current row, often wrapped in COUNTROWS to count a customer's orders. Both need an existing relationship and a row context.
15

What is a snowflake schema and should you avoid it in Power BI?

Save to ▾
Show answer
A snowflake schema normalises dimensions into several related tables, such as Product linked to Subcategory linked to Category. It saves little space in Power BI because columnar compression already handles repetition, and it adds relationships, longer filter paths and a more confusing field list. Usually it is better to flatten these into one Product dimension in Power Query, keeping the model a clean star.
16

How do you learn a difficult concept like filter context?

Save to ▾
Show answer
I learn by building tiny examples. For filter context I made a small model with five products and wrote measures with and without ALL, KEEPFILTERS and ALLSELECTED, checking each result in a table visual. I also read documentation and use DAX Studio to see queries. Explaining it to a teammate afterwards showed me which parts I had not fully understood.
17

How do you build a toggle between a chart and a table using bookmarks?

Save to ▾
Show answer
Place a chart and a table in the same position. In the Selection pane hide the table and create a bookmark named Chart View with Data unchecked so filters are not saved; then show the table, hide the chart and create Table View. Add two buttons and set each button's action to the matching bookmark. Group the visuals to keep the layout tidy.
18

Your model has one wide flat table with 80 columns from an Excel export. How would you remodel it?

Save to ▾
Show answer
I would identify the grain, such as one row per order line, and split descriptive attributes into dimension tables like Customer, Product, Store and Date using Reference queries and Remove Duplicates on keys. The fact table keeps keys and numeric columns only. Then create one-to-many single-direction relationships. This reduces size, simplifies DAX and makes slicers faster and more reliable.
19

How do you set up a custom function in Power Query to apply logic to many files?

Save to ▾
Show answer
Write a query for one file, turn the file path into a parameter, then right-click and Create Function. Or write it in M: (path as text) as table => let Src = Excel.Workbook(File.Contents(path), true), Sheet = Src{[Item="Sales", Kind="Sheet"]}[Data] in Sheet Then invoke it on a column of file paths with Add Column, Invoke Custom Function and expand the results.
20

What is the difference between COUNT, COUNTA, COUNTROWS and DISTINCTCOUNT?

Save to ▾
Show answer
COUNT counts non-blank values in a column, COUNTA counts non-blank values of any type, COUNTROWS counts rows in a table, and DISTINCTCOUNT counts unique values in a column. For example, COUNTROWS(Sales) gives order lines while DISTINCTCOUNT(Sales[CustomerID]) gives active customers. COUNTROWS is generally preferred for counting records because its intent is clearer.
21

Write a measure for percentage of grand total sales.

Save to ▾
Show answer
Sales % of Total = DIVIDE( [Total Sales], CALCULATE([Total Sales], REMOVEFILTERS('Product')) ) This gives each product's share of total across all products. Use ALLSELECTED('Product') instead if the denominator should respect slicer selections on products.
22

What is the relationship between Power BI and Microsoft Fabric?

Save to ▾
Show answer
Microsoft Fabric is Microsoft's unified analytics platform that includes data engineering, data factory, data warehousing, real-time analytics and Power BI as its reporting layer. Power BI workspaces can live on Fabric capacity and use items such as lakehouses and warehouses in OneLake. Direct Lake mode lets semantic models read Delta tables in OneLake directly without a full import, combining fresh data with near-import speed.
23

Rewrite a slow measure to use variables and avoid repeated calculation.

Save to ▾
Show answer
Before: Growth = IF([Sales PY] = 0, BLANK(), ([Total Sales] - [Sales PY]) / [Sales PY]) After: Growth = VAR cur = [Total Sales] VAR py = [Sales PY] RETURN DIVIDE(cur - py, py) The previous year measure is now evaluated once instead of three times, and DIVIDE handles zero safely.
24

How do you stay current with frequent Power BI updates?

Save to ▾
Show answer
Power BI releases features monthly, so I read the monthly update blog and Fabric release notes, try new features on a test report, and follow community experts and forums. I keep a short list of features relevant to our team, such as visual calculations or TMDL view, and share a five-minute demo in team meetings when something will save us effort.
25

What does the Best Practice Analyzer do?

Save to ▾
Show answer
Best Practice Analyzer, in Tabular Editor and also available in Fabric notebooks through semantic link labs, scans a semantic model against a set of rules, such as avoiding bi-directional relationships, hiding foreign keys, not summarising numeric IDs, using DIVIDE, and setting format strings. It lists violations with their severity so teams can fix them before release. Rules can be customised to match team standards.
26

What are the most useful table functions in DAX?

Save to ▾
Show answer
Key table functions include FILTER, ALL, VALUES, DISTINCT, SUMMARIZE and SUMMARIZECOLUMNS for grouping, ADDCOLUMNS to add calculated columns, TOPN for top rows, CROSSJOIN, UNION, EXCEPT, INTERSECT, GENERATESERIES and TREATAS for virtual relationships. They return tables used inside iterators, CALCULATE filters or calculated tables. ADDCOLUMNS over SUMMARIZE is a common pattern for reliable grouped results.
27

How do you build a custom tooltip page?

Save to ▾
Show answer
Create a new page, set Page information, Allow use as tooltip on, and set Canvas settings to the Tooltip size. Add small visuals like a monthly trend line for the hovered item. On the main visual, go to Format, Tooltips, set Type to Report page and select the tooltip page. Fields in the main visual automatically filter the tooltip page on hover.
28

How do you design reports for accessibility?

Save to ▾
Show answer
Use sufficient colour contrast and do not rely on colour alone, for example add icons or labels to red and green. Set alt text on visuals, a logical tab order in the selection pane, clear titles and readable font sizes. Avoid tiny text and very dense pages. Power BI supports screen readers and keyboard navigation, and high-contrast themes help users with low vision.
29

How do you mentor junior Power BI developers in your team?

Save to ▾
Show answer
I pair with them on real tasks, review their models and DAX with clear reasons rather than just fixes, and share a short checklist covering star schema, naming, measures over columns and performance checks. I give them ownership of small reports early. One junior I mentored moved from building single-table reports to owning a shared finance model within six months.
30

What is a calculated table and when would you use one?

Save to ▾
Show answer
A calculated table is created with a DAX expression and stored in the model, recalculated at refresh. Examples are a date table using CALENDAR, a disconnected parameter table for what-if analysis, or a summary table. It is handy but adds memory, and it cannot use Power Query folding. For most shaping tasks, creating tables in the source or Power Query is preferred.
31

Write an M query that filters rows, removes columns and changes types.

Save to ▾
Show answer
let Source = Sql.Database("server", "SalesDB"), Orders = Source{[Schema="dbo", Item="Orders"]}[Data], Filtered = Table.SelectRows(Orders, each [OrderDate] >= #date(2024, 1, 1)), Kept = Table.SelectColumns(Filtered, {"OrderID", "OrderDate", "CustomerID", "Amount"}), Typed = Table.TransformColumnTypes(Kept, {{"Amount", Currency.Type}, {"OrderDate", type date}}) in Typed All these steps fold to SQL on a database source.
32

What are paginated reports and when would you use them?

Save to ▾
Show answer
Paginated reports, built with Power BI Report Builder, are pixel-perfect, print-ready reports that can span many pages, such as invoices, statements or regulatory reports with long tables. They are ideal when users need exact layout, export to PDF or Excel, or detailed row-level listings. Interactive Power BI reports are better for exploration. Paginated reports can run in the Service with Pro, PPU or Fabric capacity.
33

A YTD measure returns blank for future months on a chart. Users want the line to stop at today. How?

Save to ▾
Show answer
The issue is the opposite for many teams: YTD repeats the last value for future months. I would add a condition so the measure returns BLANK when the period starts after the last date with data, for example IF(MIN('Date'[Date]) > [Last Sales Date], BLANK(), TOTALYTD(...)). Alternatively add a column flagging dates up to today in the date table and filter the visual on it.
34

Write a measure that counts customers with sales above 10,000.

Save to ▾
Show answer
Big Customers = COUNTROWS( FILTER( VALUES(Customer[CustomerID]), [Total Sales] > 10000 ) ) Iterating VALUES of the customer key keeps the loop small and respects current filters such as year or region.
35

Why should you set data types correctly in Power Query?

Save to ▾
Show answer
Correct data types make sorting, filtering, aggregation and relationships work properly; text-typed numbers cannot be summed and mismatched key types break relationships. Types also affect compression and model size, for example whole numbers compress better than decimals or text. Set types once near the end of a query and avoid repeated automatic Changed Type steps, which can fail when column names change.
36

How do you handle errors in Power Query without failing the whole refresh?

Save to ▾
Show answer
Use Keep Errors on a copy of the query to inspect the bad rows, then fix the cause, such as wrong data types or invalid dates. Replace Errors can substitute a value, and in M try ... otherwise catches errors per value: = Table.AddColumn(Source, "AmountNum", each try Number.From([Amount]) otherwise null, type nullable number) Log error rows to a separate query so they can be reviewed rather than silently dropped.

Frequently asked questions

Which companies hire Power BI professionals in Delhi?

Companies with large offices in Delhi include many IT services and product firms. Use their company pages below to practise employer-specific sets.

Are Power BI interviews in Delhi different from other cities?

The questions depend more on the company than the city. Delhi's mix of employers decides the style: Delhi itself hosts many corporate, government-tech and consulting offices, and most candidates also apply across Noida and Gurgaon, so interviews here mix service-company and product-company styles

How do I find Power BI jobs in Delhi?

Shortlist companies with Delhi offices, keep your CV focused on Power BI projects, apply on company career pages and job portals with the Delhi filter, and practise the questions on this page before each interview.