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

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
Anonymous
Not applicable

Conditional Column based on multiple rows

I have one table that I need to add a conditional column or other solution I haven't considered. I need to know for each customer, if any of their contacts is subscribed to any of the subscriptions. So one yes for Customer AAA in those 3 rows of 3 subscription types would be "YES" and customer BBB would be "NO" because their two contacts is not signed up for any subscriptions.

 

Is there a conditional column or new/merged query or grouping I would use to get there?

 

I am creating a dashboard that will have a red or green icon beside each custoemer to tell me that at least one person at that customer is signed up for an alert/subscription.

 

Current State

Customer NameUserSubscription 1Subscription 2Subscription 3
AAAJenYesNoNo
AAAAmyNoNoNo
AAACarlNoYesNo
BBBMarkNoNoNo
BBBDonNoNoNo

 

Needed Result

Customer NameSubscription
AAAYes
BBBNo
1 ACCEPTED SOLUTION
PhilipTreacy
Super User
Super User

Hi @Anonymous 

 

Download this example PBIX file.

 

This measure does what you want.

 

Measure = IF(CALCULATE(COUNTROWS('Table'), FILTER('Table', 'Table'[Subscription 1] = "Yes" || 'Table'[Subscription 2] = "Yes" || 'Table'[Subscription 3] = "Yes")) > 0 , "Yes", "No")

 

subs.png

Regards

Phil



Did I answer your question? Then please mark my post as the solution.
If I helped you, click on the Thumbs Up to give Kudos.


Blog :: YouTube Channel :: Connect on Linkedin


Proud to be a Super User!


View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Hi @Anonymous ,

You can create a measure as below:

Subscription = 
VAR _count =
    CALCULATE (
        DISTINCTCOUNT ( 'Table'[User] ),
        FILTER (
            'Table',
            'Table'[Customer Name] = SELECTEDVALUE ( 'Table'[Customer Name] )
                && ( 'Table'[Subscription 1] = "Yes"
                || 'Table'[Subscription 2] = "Yes"
                || 'Table'[Subscription 3] = "Yes" )
        )
    )
RETURN
    IF ( _count > 0, "Yes", "No" )

yingyinr_0-1615790864221.png

Best Regards

PhilipTreacy
Super User
Super User

Hi @Anonymous 

 

Download this example PBIX file.

 

This measure does what you want.

 

Measure = IF(CALCULATE(COUNTROWS('Table'), FILTER('Table', 'Table'[Subscription 1] = "Yes" || 'Table'[Subscription 2] = "Yes" || 'Table'[Subscription 3] = "Yes")) > 0 , "Yes", "No")

 

subs.png

Regards

Phil



Did I answer your question? Then please mark my post as the solution.
If I helped you, click on the Thumbs Up to give Kudos.


Blog :: YouTube Channel :: Connect on Linkedin


Proud to be a Super User!


Hi, if I may, I'm trying to do something similar, but I need to be able to store the output on my table. I tried using the same functions but instead of using a measure using a calculated column but it doesn't work (I believe calculated columns only evaluate row by row, right)

 

Would you have a suggestion on how to achieve something similar but to be able to save it on a table? I basically need to be able to a pie chart showing (trying to keep the same example as above) number of customer with and without subscriptions.

 

Thanks

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.