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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
awff
Helper III
Helper III

Finding the earliest date across multiple rows

Hi fellow PBI'ers,

I'm trying to create a measure that lists the earliest date a product was held by customers. 

 

Below is a simplified mock up data with the earliest dates bolded:

 

ClientProductStart DateEnd Date
A11-Jan-211-Jan-22
A11-Jun-101-May-10
B21-Dec-211-Dec-22
B31-Apr-211-Apr-22
B21-May-191-May-20
C31-Feb-211-Feb-22
C31-Mar-211-Mar-22


The result ideally should list the earliest date possible per customer by product:

ClientProductEarliest Date
A11-Jun-10
B21-May-19
B31-Apr-21
C31-Feb-21

 

I'm assuming it will be a combination of SUMMARIZE and ALL however, for some reason my results are either:
* Earliest date of the most recent row or;
* Earliest date for each product but across ALL clients rather than per client and product.

1 ACCEPTED SOLUTION

Hi @awff ,

 

Try this measure to see if this will meet your needs:

Measure = CALCULATE(MIN('Table'[Start Date]),ALLEXCEPT('Table','Table'[Client],'Table'[Product]))

Vlianlmsft_0-1644285215631.png

 

 

Best Regards,
Liang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

5 REPLIES 5
awff
Helper III
Helper III

I played around with the syntax and this seems to work as a measure:

First Start Date = 
Calculate(
    FIRSTDATE(table[Start Date]),
    Filter(
        ALLEXCEPT(table, table[Account], table[Product]),
        table[Start Date] <= Min(table[Start Date])))

 Cross checking with a small sample of the data seemed to return the correct values so far.

Ok, So this only seems to work when drilled down clicking on a row in the table.

 

But when not filtered, It seems to returning the earliest date of the entire data set for the particular product!

Hi @awff ,

 

Try this measure to see if this will meet your needs:

Measure = CALCULATE(MIN('Table'[Start Date]),ALLEXCEPT('Table','Table'[Client],'Table'[Product]))

Vlianlmsft_0-1644285215631.png

 

 

Best Regards,
Liang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

SteveHailey
Solution Specialist
Solution Specialist

Hey @awff. This should do the trick:

New Table = 
ADDCOLUMNS(
    SUMMARIZE( 'Table', 'Table'[Client], 'Table'[Product] ),
    "Earliest Date", CALCULATE( MIN( 'Table'[Start Date] ) )
)

Thanks @SteveHailey ,

I'm assuming this is for a new table

is there a way i can have this as a measure for a table visualisation?

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.