Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredJoin us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM. Register now.
Hi,
I'm using Direct Query to Oracle db
If I just add 1 table, PowerBi does not load all the data to client for the reports to work (applies filters and aggregations on report refresh).
However if I have 2 tables (A, B), joined via a unique key - K(a), K(b), and define a new merged query (inner join), then PowerBI tries to pre-load all the data to client (which does not work, millions of records).
The tables A, B container a lot of data and the reason for using Direct Query is performance. However PowerBi joins (merge query) seems to defeat the purpose of using Direct Query.
Am I missing something?
Note that I know I can handcraft my own join and work around the issue, I'm wondering whether there is a built-in way for joins to evaluate at report time (with filters and aggregations applied), rather then pre-fetch all the data?
Regards,
Stefan
@Anonymous , have you used +0 in measure or crossjoin.
Have you used bi-directional joins?
refer to this
https://guyinacube.com/2019/01/30/power-bi-query-reduction-when-using-directquery/
https://community.powerbi.com/t5/Desktop/Query-Reduction/td-p/964484
Hi @amitchandak ,
thank you for responding.
I'm not using any meassures or crossjoins. And DAX joins seem to only work on equivalent structure tables (not my case)
bi-directional joins seem to have no effect on merge query creation, likewise reducing query. They all seem to only have influence after the data is filtered.
Note that I can't even create the merged query because PowerBi seems to be overloaded with data.
Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!
Check out the October 2025 Power BI update to learn about new features.