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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
AbenaMina
New Member

Finding Latest Values Based on 2 columns in the same table

Hi Team,

I need help writing a DAX code that will give me the values in the Quantity Required field
Basically, for every distinct Station_TruckNumber, I want to retrieve the Quantity of the Max CalendarDate

AbenaMina_1-1652445485413.png

 

2 ACCEPTED SOLUTIONS
tamerj1
Super User
Super User

Hi @AbenaMina 

Please confirm you have a date table. Are all other columns belong to the same table?

View solution in original post

@AbenaMina 

If you want to blank out the result of other rows then

 

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
VAR LastDateValue =
    CALCULATE (
        MAX ( TableName[Quantity] ),
        ALLEXCEPT (
            TableName,
            TableName[Station_TruckNumber] ),
            TableName[CalendarDate] = LastDate
    )
RETURN
    IF ( MAX ( TableName[CalendarDate] ) = LastDate, LastDateValue )

 

View solution in original post

11 REPLIES 11
AbenaMina
New Member

AbenaMina_1-1652463801082.png

 

 

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
VAR LastDateValue =
    CALCULATE (
        MAX ( TableName[Quantity] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] ),
        TableName[CalendarDate] = LastDate
    )
RETURN
    IF ( MAX ( TableName[CalendarDate] ) = LastDate, LastDateValue )

This one worked

AbenaMina
New Member

No, it didn't work
It doesn't work for the year field. I want for the date field, select the Quantity for any given maximum date for every distinct station_trucknumber.

Take a look at the screenshot,
I am highlighting distinct station_trucknumber, and its corresponding max calendardate so from these 2 combinations, I want the corresponding Quantity

@AbenaMina 

If you want to blank out the result of other rows then

 

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
VAR LastDateValue =
    CALCULATE (
        MAX ( TableName[Quantity] ),
        ALLEXCEPT (
            TableName,
            TableName[Station_TruckNumber] ),
            TableName[CalendarDate] = LastDate
    )
RETURN
    IF ( MAX ( TableName[CalendarDate] ) = LastDate, LastDateValue )

 

This one work, I made a little modification for the bolded part : TableName[CalendarDate] = LastDate

 

 

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
VAR LastDateValue =
    CALCULATE (
        MAX ( TableName[Quantity] ),
        ALLEXCEPT (
            TableName,
            TableName[Station_TruckNumber],
            TableName[CalendarDate]
        )
    )
RETURN
    IF ( MAX ( TableName[CalendarDate] ) = LastDate, LastDateValue )

 

 

@AbenaMina 
You are absolutely right. Also there is no need for calculate and ALLEXCEPT in 2nd variable

 

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
VAR LastDateValue =
    MAX ( TableName[Quantity] )
RETURN
    IF ( MAX ( TableName[CalendarDate] ) = LastDate, LastDateValue )

 

@AbenaMina 

I misunderstood the requirement. My mistake. 
please try

Quantity Required =
VAR LastDate =
    CALCULATE (
        MAX ( TableName[CalendarDate] ),
        ALLEXCEPT ( TableName, TableName[Station_TruckNumber] )
    )
RETURN
    CALCULATE (
        MAX ( TableName[Quantity] ),
        ALLEXCEPT (
            TableName,
            TableName[Station_TruckNumber],
            TableName[CalendarDate] = LastDate
        )
    )
AbenaMina
New Member

All the columns belong to the same table

@AbenaMina 

You have first to create a CalrndarYear colum. New Column >

CalrndarYear = YEAR ( TableName[CalrndarDate] )

then New Measure > 

Quantity Required =
CALCULATE (
    MAX ( TableName[Quantity] ),
    ALLEXCEPT ( TableName, TableName[Station_TruckNumber], TableName[CalendarYear] )
)
tamerj1
Super User
Super User

Hi @AbenaMina 

Please confirm you have a date table. Are all other columns belong to the same table?

Helpful resources

Announcements
Europe Fabric Conference

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.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

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