Forum Discussion
Help optimizing a row by row calculated column that filters on the past 30 minutes
Hello All,
I have spent all day today and yesterday trying to solve an issue I have with a calculated column a former colleague made. It is taking extremely long to run over data sets of 300-400k rows, and I haven't been able to solve the issue.
- Anonymous2 years ago
Hi PJStevens ,
Maybe you can try below formula to create calculated column:
Summed Calculation = VAR CurrentDateTime = 'Table'[DateTimeKey] VAR StartTime = CurrentDateTime - TIME(0, 30, 0) VAR Summed = CALCULATE( SUM('Table'[Counter Onderbreking CV]) / 4, FILTER( 'Table', 'Table'[DateTimeKey] <= CurrentDateTime && 'Table'[DateTimeKey] > StartTime ) ) RETURN IF(Summed = 1, 1, 0)Best Regards,
Adamk KongIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
3 Replies
- lbendlin
Super User
Install DAX Studio and then use it to examine the query plan and modify according to your findings.
No need to specify FILTER inside CALCULATE - that will be done for you automatically.
Consider using aggregation functions instead of CALCULATE.
- AnonymousNot applicable
Hi PJStevens ,
Maybe you can try below formula to create calculated column:
Summed Calculation = VAR CurrentDateTime = 'Table'[DateTimeKey] VAR StartTime = CurrentDateTime - TIME(0, 30, 0) VAR Summed = CALCULATE( SUM('Table'[Counter Onderbreking CV]) / 4, FILTER( 'Table', 'Table'[DateTimeKey] <= CurrentDateTime && 'Table'[DateTimeKey] > StartTime ) ) RETURN IF(Summed = 1, 1, 0)Best Regards,
Adamk KongIf this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- PJStevens
Advocate II
Hello,
Thanks for the reply. This is indeed the solution I went with, unfortunately, due to the nature of the calculation, I have decided to only apply it to the past 2 months as to not overload it.
I will mark it as solved, as this is essentially the same calculation I am using, but instead of using it on the entire data set, I only use it on the past 2 months.Thanks anyways for the reply.