Forum Discussion

shuhn1229's avatar
shuhn1229
Resolver I
3 years ago
Solved

Combining First Non Blank with Filter

Hi all,

 

I have two tables, lets call them A and B. Table A is a key column and is used to map naming conventions to B when a user uses an inappropriate name. However, this mapping can be different depending on the ID column in table B. In essence I need to create a calculated column that Filters the ID of Table A by Table B, checks if the name column of the record is in table B, and if the Name in the given row is there, show the value in table A. If not, go with the value of name column in table B. Representation below with calculated column in the far right of table b:

 

table A

IDNameKey
ApplesQ732
ApplesQ743
OrangesR756
PineapplesQ731
PineapplesQ742
PineapplesQ753

 

Table B

IDNameValue
ApplesQ50Q50
ApplesQ51Q51
ApplesQ52Q52
ApplesQ732
ApplesQ743
PineapplesQ20Q20
PineapplesQ21Q21
PineapplesQ731
PineapplesQ742
PineapplesQ753

 

Thank you!

 

  • pls try this

     

     

    Column = 
    
     COALESCE(
         CONVERT(
             CALCULATE(MAX('TableA'[Key]), FILTER(ALL(TableA),TableA[Name]='TableB'[Name]&&TableA[ID]='TableB'[D])),STRING),
         [Name])

     

     

2 Replies

  • pls try this

     

     

    Column = 
    
     COALESCE(
         CONVERT(
             CALCULATE(MAX('TableA'[Key]), FILTER(ALL(TableA),TableA[Name]='TableB'[Name]&&TableA[ID]='TableB'[D])),STRING),
         [Name])