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

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
VijayAntonyM
Helper I
Helper I

DAX Measure: identify unique rows before sum is calculated

Hi Team,

Good day,

 

We wanted to SUM the volumn column but consider only unique records,

Highlighted expected column in YELLOW color , Would like to set 0 for duplicate records on based

datekey, payer,payer_parent,eng_code as below, Same time this should be work even for filters and slicers.

 

datekeypayerpayer_namepayer_parentpayer_parent_nameegn_codeegn_nameVolumeVolumeBusiness_UnitAttributeValue
3/1/2024013730L3HARRIS IMS-KEO0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES2222Dom SPAir0
3/1/2024013730L3HARRIS IMS-KEO0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES220Dom SPGround0.066276617
3/1/2024013730L3HARRIS IMS-KEO0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES220Dom SPFacilities0.004344208
2/1/2024039927L-3 MARITIME SYSTEMS0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES1010Dom SPAir0
2/1/2024039927L-3 MARITIME SYSTEMS0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES100Dom SPGround0.036742053
2/1/2024039927L-3 MARITIME SYSTEMS0007366010L3HARRIS TECHNOLOGIES1042078000L3 TECHNOLOGIES100Dom SPFacilities0.00285356

 

 

Thanks

M. Vijay Antony

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @VijayAntonyM 

 

Thank you very much Rupak_bi for your prompt reply.

 

First, you can create a calculated column to combine datekey, payer, payer_parent, and egn_code to form a unique identifier.

 

UniqueID = [datekey] & "-" & [payer] & "-" & [payer_parent] & "-" & [egn_code]

 

Then create a measure.

AdjustedVolume = 
var _rank = 
RANKX(
    FILTER(
        ALL('Table'),
        'Table'[UniqueID] = MAX('Table'[UniqueID])
    ),
    CALCULATE(MAX('Table'[Attribute])),
    ,
    ASC,
    Dense
)
RETURN
IF(
    _rank = 1,
    SUM('Table'[Volume]),
    0
)

 

If you don't want to create calculated columns, try that too:

 

Measure AdjustedVolume = 
var _rank = 
RANKX(
    FILTER(
        ALL('Table'),
        'Table'[datekey] = MAX('Table'[datekey])
        &&
        'Table'[payer] = MAX('Table'[payer])
        &&
        'Table'[payer_parent] = MAX('Table'[payer_parent])
        &&
        'Table'[egn_code] = MAX('Table'[egn_code])
    ),
    CALCULATE(MAX('Table'[Attribute])),
    ,
    ASC,
    Dense
)
RETURN
IF(
    _rank = 1,
    SUM('Table'[Volume]),
    0
)

 

Here is the result.

 

vnuocmsft_0-1732522103703.png

 

Regards,

Nono Chen

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

Hi @VijayAntonyM 

 

Thank you very much Rupak_bi for your prompt reply.

 

First, you can create a calculated column to combine datekey, payer, payer_parent, and egn_code to form a unique identifier.

 

UniqueID = [datekey] & "-" & [payer] & "-" & [payer_parent] & "-" & [egn_code]

 

Then create a measure.

AdjustedVolume = 
var _rank = 
RANKX(
    FILTER(
        ALL('Table'),
        'Table'[UniqueID] = MAX('Table'[UniqueID])
    ),
    CALCULATE(MAX('Table'[Attribute])),
    ,
    ASC,
    Dense
)
RETURN
IF(
    _rank = 1,
    SUM('Table'[Volume]),
    0
)

 

If you don't want to create calculated columns, try that too:

 

Measure AdjustedVolume = 
var _rank = 
RANKX(
    FILTER(
        ALL('Table'),
        'Table'[datekey] = MAX('Table'[datekey])
        &&
        'Table'[payer] = MAX('Table'[payer])
        &&
        'Table'[payer_parent] = MAX('Table'[payer_parent])
        &&
        'Table'[egn_code] = MAX('Table'[egn_code])
    ),
    CALCULATE(MAX('Table'[Attribute])),
    ,
    ASC,
    Dense
)
RETURN
IF(
    _rank = 1,
    SUM('Table'[Volume]),
    0
)

 

Here is the result.

 

vnuocmsft_0-1732522103703.png

 

Regards,

Nono Chen

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Rupak_bi
Impactful Individual
Impactful Individual

Hi @VijayAntonyM ,

 

Please see below image. Hope this solves your problem using a simgle measure. I dont think making duplicate entries Zero is really required as far as your output is concerned.

Rupak_bi_0-1732354697775.png

 



Regards
Rupak
FOLLOW ME : https://www.linkedin.com/in/rupaksar/

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.