Forum Discussion

khalilliraqui's avatar
khalilliraqui
Regular Visitor
10 years ago
Solved

Counting using related tables

I have three tables related to each others (two tables many-to-many) : lets take this as an example 

A person has many resources

I wanted to count for example : for every resource the number of people who has this resource, with a special condition on person for example firstname starts with "j".

I try many functions like filter or others but theese function only filter into the same table.

how can i use join on couting ?

 

  • Anonymous's avatar
    Anonymous
    10 years ago

    Hi khalilliraqui,

     

    According to your description, you want to get the count of resource owner persons which first name start with “j”?

     

    If as I said, you can follow below steps):

     

    1.  Create sample table, ‘Person’, ’Personal Source’ , ‘Resource Type’.

    ‘Person’:

    ’Personal Source’:

     

    ‘Resource Type’:

     

    1. Write the Dax formula of requirement:

     

    Recoure Count of Person Start with 'j' = DISTINCT( SELECTCOLUMNS('Personal Source',"Resource Type",RELATED('Resource Type'[Name]),"Count",COUNTX(FILTER('Personal Source','Personal Source'[Resource Type ID]=EARLIER('Personal Source'[Resource Type ID])&& LEFT(RELATED(Person[First Name]))="j"),'Personal Source'[Person ID])))

     

     

     

    Reference:

    LEFT Function (DAX)

    RELATED Function (DAX)

     

    Regards,

    Xiaoxin Sheng

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi khalilliraqui,

     

    According to your description, you want to get the count of resource owner persons which first name start with “j”?

     

    If as I said, you can follow below steps):

     

    1.  Create sample table, ‘Person’, ’Personal Source’ , ‘Resource Type’.

    ‘Person’:

    ’Personal Source’:

     

    ‘Resource Type’:

     

    1. Write the Dax formula of requirement:

     

    Recoure Count of Person Start with 'j' = DISTINCT( SELECTCOLUMNS('Personal Source',"Resource Type",RELATED('Resource Type'[Name]),"Count",COUNTX(FILTER('Personal Source','Personal Source'[Resource Type ID]=EARLIER('Personal Source'[Resource Type ID])&& LEFT(RELATED(Person[First Name]))="j"),'Personal Source'[Person ID])))

     

     

     

    Reference:

    LEFT Function (DAX)

    RELATED Function (DAX)

     

    Regards,

    Xiaoxin Sheng