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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Saxon10
Post Prodigy
Post Prodigy

Calculate distinct based on the two columns

In data table I have 3 columns are Team, Id and result.

In result column contain win, loss and no result.

If same team and id contain win, loss and no result then return "Multiple".

If same team and id contain win then return "win".

If same team and id contain loss then return "loss".

If same team and id contain win and no result then return "win".

If same team and id contain loss and no result then return "loss".

 

TeamIDResultDesired Report
TR1SWinMultiple
TR1SWinMultiple
TR1SNo ResultMultiple
TR1SNo ResultMultiple
TR1SLossMultiple
TR1SLossMultiple
TR2SWinMultiple
TR2SWinMultiple
TR2SLossMultiple
TR2SLossMultiple
TR3SLossLoss
TR3SLossLoss
TR4SWinWin
TR4SWinWin
TR5SNo ResultWin
TR5SwinWin
TR6SLossLoss
TR6SNo ResultLoss

 

Saxon10_0-1628713715880.png

 

3 ACCEPTED SOLUTIONS
Jos_Woolley
Solution Sage
Solution Sage

Hi,

NewColumn =
VAR MyTeam = 'Table'[Team]
VAR MyID = 'Table'[ID]
VAR MyTeamIDWins =
    CALCULATE (
        COUNTROWS ( FILTER ( 'Table', 'Table'[Team] = MyTeam && 'Table'[ID] = MyID ) ),
        'Table'[Result] = "Win"
    )
VAR MyTeamIDLosses =
    CALCULATE (
        COUNTROWS ( FILTER ( 'Table', 'Table'[Team] = MyTeam && 'Table'[ID] = MyID ) ),
        'Table'[Result] = "Loss"
    )
RETURN
    SWITCH (
        1 * ( MyTeamIDWins > 0 ) + 2 * ( MyTeamIDLosses > 0 ),
        1, "Win",
        2, "Loss",
        3, "Multiple"
    )

Regards

View solution in original post

AlexisOlson
Super User
Super User

How about this?

Desired Report =
VAR Results =
    CALCULATETABLE (
        VALUES ( Table1[Result] ),
        ALLEXCEPT ( Table1, Table1[Team], Table1[ID] ),
        Table1[Result] <> "No Result"
    )
RETURN
    SWITCH (
        TRUE (),
        COUNTROWS ( Results ) = 0, "No Result",
        COUNTROWS ( Results ) = 1, Results,
        COUNTROWS ( Results ) > 1, "Multiple"
    )

View solution in original post

Saxon10
Post Prodigy
Post Prodigy

Thanks for your reply and solution for @Jos_Woolley  and @AlexisOlson and sorry for the late reply. 

Both solutions are working well. 

View solution in original post

3 REPLIES 3
Saxon10
Post Prodigy
Post Prodigy

Thanks for your reply and solution for @Jos_Woolley  and @AlexisOlson and sorry for the late reply. 

Both solutions are working well. 

AlexisOlson
Super User
Super User

How about this?

Desired Report =
VAR Results =
    CALCULATETABLE (
        VALUES ( Table1[Result] ),
        ALLEXCEPT ( Table1, Table1[Team], Table1[ID] ),
        Table1[Result] <> "No Result"
    )
RETURN
    SWITCH (
        TRUE (),
        COUNTROWS ( Results ) = 0, "No Result",
        COUNTROWS ( Results ) = 1, Results,
        COUNTROWS ( Results ) > 1, "Multiple"
    )
Jos_Woolley
Solution Sage
Solution Sage

Hi,

NewColumn =
VAR MyTeam = 'Table'[Team]
VAR MyID = 'Table'[ID]
VAR MyTeamIDWins =
    CALCULATE (
        COUNTROWS ( FILTER ( 'Table', 'Table'[Team] = MyTeam && 'Table'[ID] = MyID ) ),
        'Table'[Result] = "Win"
    )
VAR MyTeamIDLosses =
    CALCULATE (
        COUNTROWS ( FILTER ( 'Table', 'Table'[Team] = MyTeam && 'Table'[ID] = MyID ) ),
        'Table'[Result] = "Loss"
    )
RETURN
    SWITCH (
        1 * ( MyTeamIDWins > 0 ) + 2 * ( MyTeamIDLosses > 0 ),
        1, "Win",
        2, "Loss",
        3, "Multiple"
    )

Regards

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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