Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
9 years ago
Solved

different dax query for each row

I have two tables 

 

table 1 

 

id  a   b    c    d  (columns)

1   0   1    1    1  (rows)

2   1   0    1    0  

 

table 2

 

feature  adoption  frequency (columns)

a

b

c

d

 

Now i want to fill adoption column in table 2.  This column will have count of all the "1" from table 1. I need to match column value (feature) from table 2 and column (a) from table 1. 

 

eg adoption for feature 'a' will count of all the rows from column 'a' in table 1 where row value=1.

 

How can I implement this? All the columns in both the tables are calculated columns.   

  • Hi Anonymous,

    I try to reproduce yourscenario and get expected result using the following steps.

    1. Right click Table1 -> Edit Query, like the screenshot.



    2. Select a,b,c,d column->click Unpivot columns->Close&Apply. You will get the table like the second screenshot below.





    3. Create a relationship between Table1 and Table2. More details about creating and management relationship, please review this article.



    4. Create a calculated column using the formula, you will get the desired result.

    adoption = CALCULATE(COUNT(Table1[Value]),Table1[Value]=1)



    If you have other issues, don't hesitate to let me know.

    Best Regards,
    Angelia

2 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    That's pretty nasty. Off the top of my head, maybe a custom column in table 2, something like:

     

    IF([Feature] = "a",SUM('table 1'[a]),IF([Feature] = "b",SUM('table 1[b],...

    Probably cleaner with a SWITCH statement.

  • v-huizhn-msft's avatar
    v-huizhn-msft
    Microsoft Employee

    Hi Anonymous,

    I try to reproduce yourscenario and get expected result using the following steps.

    1. Right click Table1 -> Edit Query, like the screenshot.



    2. Select a,b,c,d column->click Unpivot columns->Close&Apply. You will get the table like the second screenshot below.





    3. Create a relationship between Table1 and Table2. More details about creating and management relationship, please review this article.



    4. Create a calculated column using the formula, you will get the desired result.

    adoption = CALCULATE(COUNT(Table1[Value]),Table1[Value]=1)



    If you have other issues, don't hesitate to let me know.

    Best Regards,
    Angelia