Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Sebx
Regular Visitor

Sum values which are not in another table

Hello,

 

I have datamodel with two tables - table with sales (id, amount) and second table with incorrect payments (id, reason). Tables are connected by relationship on Id in both tables (in other words sales table contains all ids and incorrect payments has some ids from sales). I want to create sum of amounts from sales table, with excluded payments from incorrect payments table.

 

I know that I could make join in powerquery, but I would like to use measure instead. I have tried something like below, but it didn't work. Any ideas?

 

CALCULATE(SUM('sales'[amount]),ISBLANK('incorrect payments'[Id]))

 

Thank you

1 ACCEPTED SOLUTION
Anonymous
Not applicable

I made 2 dummy tables to replicate the story you have provided. This essentially lets you search sum the Sales[Amount] by filtering out rows where the Sales ID exists in the Incorrect Payments table.

Sales

Sales IDAmount

1

$50
2$100
3$150
4$100
5$250
6$100
7$150
8$110
9$125
10$108

 

Incorrect Payment

Sales IDReason
4Declined Payment
8Invalid Payment Method
9Declined Payment
10Duplicate Payment

 

 

 

 

Sales Excluding Failed Payment = 
VAR _VariableTable =
    CALCULATETABLE (
        VALUES ( 'Incorrect Payments'[Sales ID] ),
        ALLSELECTED ( 'Incorrect Payments' )
    )
    
RETURN
    SUMX (
        FILTER ( ALLSELECTED ( Sales ), NOT ( Sales[Sales ID] ) IN _VariableTable ),
        Sales[Amount]
    )

 

 

 

 

transform99_0-1669940014464.png

 

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

I made 2 dummy tables to replicate the story you have provided. This essentially lets you search sum the Sales[Amount] by filtering out rows where the Sales ID exists in the Incorrect Payments table.

Sales

Sales IDAmount

1

$50
2$100
3$150
4$100
5$250
6$100
7$150
8$110
9$125
10$108

 

Incorrect Payment

Sales IDReason
4Declined Payment
8Invalid Payment Method
9Declined Payment
10Duplicate Payment

 

 

 

 

Sales Excluding Failed Payment = 
VAR _VariableTable =
    CALCULATETABLE (
        VALUES ( 'Incorrect Payments'[Sales ID] ),
        ALLSELECTED ( 'Incorrect Payments' )
    )
    
RETURN
    SUMX (
        FILTER ( ALLSELECTED ( Sales ), NOT ( Sales[Sales ID] ) IN _VariableTable ),
        Sales[Amount]
    )

 

 

 

 

transform99_0-1669940014464.png

 

That's exactly what I needed! Thank you so much!

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.