we have an sql server database that contains very old data, and we just need some recent data for creating our reports. so, we chose to import only the data whose date is later than a date X for exemple 10/12/2015 00:00:00
when we connect to the sql server database, and after we choose our tables and click on edit and we apply filters:
1- Are these filters applied before importing the data from the database to power Bi?
2- Or, are all our data imported first in power bi and then the filter is executed after that?
thanks a lot
With SQL Server database, Power BI should be smart enough to send some transformation to the backend instead of doing the transformation in Power BI. In your case, filters will be applied first in the backend and then Power BI will retrieve the filtered rows. You can check out this article for more information regarding query folding: https://www.mssqltips.com/sqlservertip/3635/query-folding-in-power-query-to-improve-performance/
If you want to filter data before the data has been imported into PBI, you can click Get Data->advanced options and write some SQL statements to achieve data you want.
If you want to filter data in Query Editors after the data been imported into PBI, you can use query parameter to filter your table. More details about query parameter, please refer to: https://powerbi.microsoft.com/en-us/blog/deep-dive-into-query-parameters-and-power-bi-templates/.
thanks for your replies.
when we do et Data->advanced options and write some SQL statements to filter data, can we filter many tables on the same time ? can we write an sql statement that retrieve many tables and filter them befor importing data to power bi ?
Yes, you can. But keep in mind. Power bi only support sql statement like select .. from ... where ... , don't spport stored procedure.
Hope this can help you.
Thanks for your reply, but I still don't know how I can do this : filter many sql server tables using advanced options sql statement befor loading those tables in different tables in power bi
Could you give me an exemple of this sql statement please?
Thanks a lot for your help
I would also like to do this. We have work orders that are linked to addresses. Im inporting two tables, workorder (for a date range) and address. The address table contains *all* possible addresses (> 2million rows) and I only want to import the ones linked to work orders for the date period selected.
Any help appreciated.