Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
hello everyone, i have a table,
"transaction table"
i made a table visual that has transaction date and nb of transactions made
as a filter slicer, i have userID
here is an example
i need to add a new measure that will calculate the dattdif between each row of date
so for first row 0 becasue there is no previous date
then from first row to second row
there is 30 days almost so 30 days
then between second row and third row there is a diff of 1 day
..
after that i need to find the average so i can know how much this customer returns on average
So if we only take the first 2 calcultaions
30 + 1 = 31/2 = 15 days average
Solved! Go to Solution.
hi, @eliasayyy
try below
Measure 16 =
var a = ADDCOLUMNS(
ALL('transaction table'[transaction date],'transaction table'[transaction],'transaction table'[userid]),
"datediff",
var a = 'transaction table'[transaction date]
var b =
MINX(
FILTER(
'transaction table',
'transaction table'[userid]=EARLIER('transaction table'[userid]) &&
'transaction table'[transaction date]>a
),
'transaction table'[transaction date]
)
var c= IF(b=BLANK(),a,b)
RETURN
DATEDIFF('transaction table'[transaction date],c,DAY)
)
RETURN
AVERAGEX(FILTER(a,'transaction table'[transaction date]<=MAX('transaction table'[transaction date])),[datediff])
hi, @eliasayyy
try below
Measure 16 =
var a = ADDCOLUMNS(
ALL('transaction table'[transaction date],'transaction table'[transaction],'transaction table'[userid]),
"datediff",
var a = 'transaction table'[transaction date]
var b =
MINX(
FILTER(
'transaction table',
'transaction table'[userid]=EARLIER('transaction table'[userid]) &&
'transaction table'[transaction date]>a
),
'transaction table'[transaction date]
)
var c= IF(b=BLANK(),a,b)
RETURN
DATEDIFF('transaction table'[transaction date],c,DAY)
)
RETURN
AVERAGEX(FILTER(a,'transaction table'[transaction date]<=MAX('transaction table'[transaction date])),[datediff])
Check out the July 2025 Power BI update to learn about new features.
User | Count |
---|---|
23 | |
9 | |
7 | |
6 | |
6 |
User | Count |
---|---|
28 | |
11 | |
11 | |
10 | |
6 |