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
Anmol
Frequent Visitor

Using Earlier() command for lag

I am having a hard time to get a expected output on a calculated column, i know how to get it through sql though using window function(lag). Here is the sql command:

 

select 

 (select lag(input_priority) over (partition by task_id order by task_id, request_datetime) as prv_input_priority

, input_priority

, convert(date, request_datetime) as dateField 

from task_log 

 

This will sort the data first on 'Task id' and then on 'request_datetime', after which will print the previous value of 'input_priority'.

 

On DAX i'm trying Earlier(), but having a very hard time to get the expected output.

 

 

 

1 ACCEPTED SOLUTION

HI @Anmol ,

 

Let me know  if this works for you.

 

 

1.jpg

 

Create Calculated Columns

 

Previous_Value = CALCULATE(
MAX('Table'[Input_Priority]),
FILTER('Table','Table'[Task_Id] = EARLIER('Table'[Task_Id]) && 'Table'[Request_DateTime] < EARLIER('Table'[Request_DateTime] )))
 
 
RANK_ = RANKX(
FILTER('Table',
'Table'[Task_Id] = EARLIER('Table'[Task_Id])
),
'Table'[Request_DateTime] 
,,ASC,Dense)
 

Regards,
Harsh Nathani

Did I answer your question? Mark my post as a solution! Appreciate with a Kudos!! (Click the Thumbs Up Button)

 

View solution in original post

3 REPLIES 3
AlB
Super User
Super User

Hi @Anmol 

Can you show a sample of the table you are using and explain with an example based on that data/table what you would need?

Please mark the question solved when done and consider giving kudos if posts are helpful.

Contact me privately for support with any larger-scale BI needs, tutoring, etc.

Cheers 

SU18_powerbi_badge

Anmol
Frequent Visitor

log.PNG

That's how the data looks like, im just looking for a calculated column that gives previous 'input_priority' only after sorting the data on 'task_id' and 'request_datetime'.

HI @Anmol ,

 

Let me know  if this works for you.

 

 

1.jpg

 

Create Calculated Columns

 

Previous_Value = CALCULATE(
MAX('Table'[Input_Priority]),
FILTER('Table','Table'[Task_Id] = EARLIER('Table'[Task_Id]) && 'Table'[Request_DateTime] < EARLIER('Table'[Request_DateTime] )))
 
 
RANK_ = RANKX(
FILTER('Table',
'Table'[Task_Id] = EARLIER('Table'[Task_Id])
),
'Table'[Request_DateTime] 
,,ASC,Dense)
 

Regards,
Harsh Nathani

Did I answer your question? Mark my post as a solution! Appreciate with a Kudos!! (Click the Thumbs Up Button)

 

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.

Top Solution Authors