Forum Discussion

dparkinson's avatar
dparkinson
Advocate I
8 years ago

Create a Calculated Table of Differences between Tables

I have an SQL Table that keeps a snapshot of the data that was used in a report from the previous week.  I have imported this table into the Power BI Desktop report that has the current weeks report.

 

I'd like to be able to create a calculated table that contains rows for any records where the values in the snapshot from last week are different this week.

 

This is an "Opportunities" list and by different, I mean the following could have changed:

  • Status: It could have moved from In Progress to Won or Lost
  • CloseBy Date: The date could have slipped outside of the 90 day window I'm reporting on
  • New Opportunities: Opportunities that are in the list now that were not there last week
  • Opportunity Value: The value of the opportunity has changed

 

So essentially, the steps I need to take are:

  • select all the rows from the current report that are not in the snapshot report
  • select all the rows from the snapshot report that are not in the current report
  • for all other rows in the current report, compare the values of various value columns, if they are different, also add those.

 

Any thoughts on how I might address this would be greatly appreciated.

Many thanks,

Kind regards,

D.

 

 

3 Replies

  • Zubair_Muhammad's avatar
    Zubair_Muhammad
    Community Champion

    Hi,

    May be

    Table =
    UNION (
        CALCULATETABLE ( TableCurrent, EXCEPT ( TableCurrent, TableSnapshot ) ),
        CALCULATETABLE ( TableSnapshot, EXCEPT ( TableSnapshot, TableCurrent ) )
    )
  • Hi,

     

    Power Query has various types of joins which should address your first two convers atleast.  Please try them.

  • v-ljerr-msft's avatar
    v-ljerr-msft
    Microsoft Employee

    Hi dparkinson,

     

    Have you tried the solutions provided above? Do they work in your scenario? If the solution works, could you accept it as solution to close this thread?

     

    If you still have any question on this issue, feel free to post here. :smileyhappy:

     

    Regards