This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
I want to only show the customers ID of the customers who have done an order for 3 consecutive months. Is there a way I can create a measure for that
Hi @ligalbert
Here is a sample file with the solution https://we.tl/t-cA5KF3G3ii
RANK =
RANKX (
Orders,
VAR CurrentDate = Orders[OrderDate]
RETURN
YEAR ( Orders[OrderDate] ) * 100 + MONTH ( Orders[OrderDate] ),,
ASC,
Dense
)Filter Measure =
VAR CurrentIDTable = CALCULATETABLE ( Orders, ALLEXCEPT ( Orders, Orders[ArCustomerID] ) )
RETURN
SUMX (
CurrentIDTable,
VAR CurrentRank = Orders[Rank]
VAR PreviousRanks = FILTER ( CurrentIDTable, Orders[RANK] >= CurrentRank )
VAR Previous3Ranks = TOPN ( 3, CurrentIDTable, Orders[RANK], ASC )
VAR Result = DIVIDE ( SUMX ( Previous3Ranks, Orders[RANK] ) - 3, 3 )
RETURN
IF (
CurrentRank = Result,
1
)
)
@ligalbert , Try a measure with help from date table
measure =
Var _1 = calculate(Countx(Values('Date'[MONTH Year]),CALCULATE(sum(Table[Order Count]))),DATESINPERIOD('Date'[Date ],MAX('Date'[Date ]),-3,MONTH))
return
countx(Values(Table[AV CustomerID]) ,calculate( If( _1 =3, [AV CustomerID], blank())))
To get the best of the time intelligence function. Make sure you have a date calendar and it has been marked as the date in model view. Also, join it with the date column of your fact/s. Refer :radacad sqlbi My Video Series Appreciate your Kudos.
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 34 | |
| 31 | |
| 30 | |
| 21 | |
| 16 |
| User | Count |
|---|---|
| 63 | |
| 53 | |
| 31 | |
| 23 | |
| 23 |