March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I have been able to create a calculated column using the EARLIER function, however I am unsure on how to find the next row (or more than 1 row earlier for that matter).
The DAX below is what I have used to find the previous Sample Date for the same unit number. Can someone please tell me how I would find the next sample date and if there is a better way of writing my current formula? I feel like using MAX or SUM here is a little dodgy as I am not actually finding either, I just want to return a single value.
=
CALCULATE
(
MAX
(
[Sample Date]
),
FILTER
(
'Sample Data',
'Sample Data'[Sample Date] < EARLIER
(
'Sample Data'[Sample Date]
)
),
'Sample Data'[Unit Number] = EARLIER
(
'Sample Data'[Unit Number]
)
)
Solved! Go to Solution.
Or if you want more generic solution, , where you can specify the poisition you want by changing N_ (4th last in the example):
A =
VAR N_ = 4 // 1 is the immediately previous, 2 is the one before and so forth
VAR auxT_ =
TOPN (
N_,
CALCULATETABLE (
DISTINCT ( 'Sample Data'[Sample Date] ),
'Sample Data'[Sample Date] < EARLIER ( 'Sample Data'[Sample Date] ),
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Unit Number] )
),
'Sample Data'[Sample Date], DESC
)
RETURN
MINX ( auxT, 'Sample Data'[Sample Date] )
|
Please accept the solution when done and consider giving a thumbs up if posts are helpful. Contact me privately for support with any larger-scale BI needs, tutoring, etc. |
Hi @justlogmein ,
Please modify your formula.
Column =
CALCULATE (
MIN ( 'Sample Date'[Sample Date] ),
FILTER (
'Sample Date',
'Sample Date'[Sample Date] > EARLIER ( 'Sample Date'[Sample Date] )
&& 'Sample Date'[unit number] = EARLIER ( 'Sample Date'[unit number] )
)
)
Or try to use @Jihwan_Kim 's way.
If I have misunderstood your meaning, please provide your pbix file without privacy information and desired output.
Best Regards
Community Support Team _ Polly
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi,
Please try the below for creating a new column.
next sample date CC =
MINX (
FILTER (
'Sample Data',
'Sample Data'[Sample Date] > EARLIER ( 'Sample Data'[Sample Date] )
&& 'Sample Data'[Unit Number] = EARLIER ( 'Sample Data'[Unit Number] )
),
'Sample Data'[Sample Date]
)
If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.
Hi @justlogmein
Please use
Top 1 Unit Number =
VAR CategoryTable =
CALCULATETABLE (
'Sample Data',
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Category] )
)
VAR Top1Value =
MAXX ( CategoryTable, 'Sample Data'[Sample Date] )
VAR Top1UnitNumber =
MAXX (
FILTER ( Top2Table, 'Sample Data'[Sample Date] = Top1Value ),
'Sample Data'[Unit Number]
)
RETURN
Top1UnitNumber
2nd Top Unit Number =
VAR CategoryTable =
CALCULATETABLE (
'Sample Data',
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Category] )
)
VAR Top2Table =
TOPN ( 2, CategoryTable, 'Sample Data'[Sample Date] )
VAR Top2Value =
MINX ( Top2Table, 'Sample Data'[Sample Date] )
VAR Top2UnitNumber =
MAXX (
FILTER ( Top2Table, 'Sample Data'[Sample Date] = Top2Value ),
'Sample Data'[Unit Number]
)
RETURN
Top2UnitNumber
Or if you want more generic solution, , where you can specify the poisition you want by changing N_ (4th last in the example):
A =
VAR N_ = 4 // 1 is the immediately previous, 2 is the one before and so forth
VAR auxT_ =
TOPN (
N_,
CALCULATETABLE (
DISTINCT ( 'Sample Data'[Sample Date] ),
'Sample Data'[Sample Date] < EARLIER ( 'Sample Data'[Sample Date] ),
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Unit Number] )
),
'Sample Data'[Sample Date], DESC
)
RETURN
MINX ( auxT, 'Sample Data'[Sample Date] )
|
Please accept the solution when done and consider giving a thumbs up if posts are helpful. Contact me privately for support with any larger-scale BI needs, tutoring, etc. |
Hi @justlogmein
NewCol =
VAR previousDate_ =
CALCULATE (
MAX ( [Sample Date] ),
'Sample Data'[Sample Date] < EARLIER ( 'Sample Data'[Sample Date] ),
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Unit Number] )
)
RETURN
CALCULATE (
MAX ( [Sample Date] ),
'Sample Data'[Sample Date] < previousDate_,
ALLEXCEPT ( 'Sample Data', 'Sample Data'[Unit Number] )
)
|
Please accept the solution when done and consider giving a thumbs up if posts are helpful. Contact me privately for support with any larger-scale BI needs, tutoring, etc. |
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.
User | Count |
---|---|
23 | |
15 | |
12 | |
9 | |
8 |
User | Count |
---|---|
41 | |
32 | |
29 | |
12 | |
12 |