cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Anonymous
Not applicable

## Most recent record from another table

Hi - I have two tabels with a many to relationship by ID. In Table 1 I have Note entries and there are multiple per ID. In table 2 I want to bring in the most recent date for each ID as well as the most recent note. In my sample date you can see that I only pull in the most recent date and note into table 2. How do I code these two fields in DAX?

Table 1:

 ID Date Note 123 5/10/2020 Note 1 123 5/15/2020 Note 2 123 6/5/2020 Note 3 123 6/15/2020 Note 4 456 6/18/2020 Note 1 456 6/24/2020 Note 2

Table 2:

 ID Date Note 123 6/15/2020 Note 4 456 6/24/2020 Note 2
2 ACCEPTED SOLUTIONS
Community Champion

Hi @Anonymous

try  a table

``````Table 2 = SUMMARIZECOLUMNS('Table 1'[ID],
"Date", MAX('Table 1'[Date]),
"Note", CALCULATE(MAX('Table 1'[Note]), FILTER('Table 1', 'Table 1'[Date]=[Date] && 'Table 1'[ID]=[ID])
))``````

do not hesitate to give a kudo to useful posts and mark solutions as solution
Employee

Here are two expressions for your calculated columns

Latest Date = CALCULATE(MAX(Table1[Date]))

Latest Note = CALCULATE(MAX(Table1[Note]), Table1[Date] = Table2[Latest Date])

The 2nd one uses the result of the first one.

If this works for you, please mark it as the solution.  Kudos are appreciated too.  Please let me know if not.

Regards,

Pat

Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

4 REPLIES 4
Super User

@Anonymous , I have done it using lastnonblankvalue , released in March 2020.

Employee

Here are two expressions for your calculated columns

Latest Date = CALCULATE(MAX(Table1[Date]))

Latest Note = CALCULATE(MAX(Table1[Note]), Table1[Date] = Table2[Latest Date])

The 2nd one uses the result of the first one.

If this works for you, please mark it as the solution.  Kudos are appreciated too.  Please let me know if not.

Regards,

Pat

Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

Community Champion

Hi @Anonymous

try  a table

``````Table 2 = SUMMARIZECOLUMNS('Table 1'[ID],
"Date", MAX('Table 1'[Date]),
"Note", CALCULATE(MAX('Table 1'[Note]), FILTER('Table 1', 'Table 1'[Date]=[Date] && 'Table 1'[ID]=[ID])
))``````

do not hesitate to give a kudo to useful posts and mark solutions as solution
Anonymous
Not applicable

Thanks, but I'd rather not have to have another table just for this. Table 2 already exists and has more columns in it than just my sample data. I just want to pull in the most recent note from Table 1.

Announcements

#### Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

#### Power BI Monthly Update - June 2024

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

#### New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

Top Solution Authors
Top Kudoed Authors