DATEADD 在添加 MAX 时抛出错误
DATEADD throwing an error when adding MAX
我希望获得过去 3 个月的销售额总和。不包括本月未完成的月份。
我有这个 Dax,但它不接受 MAX 的 DATEADD。有什么解决方法吗?
测量 1 = 计算 (
SUM ( table1[销售额] ),
DATESINPERIOD (
表 1 [日期],
DATEADD( MAX ( table1[date] ), -1,MONTH),
-3,
月
)
)
DATEADD
函数需要一组日期来计算。这就是为什么它不适用于 MAX
,returns 单个值。查找更多 here.
您需要找到数据集中的最大日期,然后从日期table中筛选出当前月份。尝试以下措施:
Measure1 =
VAR maxDate =
CALCULATE(
MAX( 'Calendar'[Date] ),
ALL('Calendar' )
)
VAR firstDay = DATE( YEAR( maxDate ), MONTH( maxDate ), 1 )
VAR maxK =
CALCULATE(
MAX('Calendar'[Date] ),
'Calendar'[Date] < firstDay
)
VAR result =
CALCULATE(
SUM( AmountPaid[PaymentAmt] ),
DATESINPERIOD('Calendar'[Date], maxK, -3, MONTH )
)
return result
maxK
部分计算最大日期,不包括我的数据集中的最新月份。您必须根据需要稍微调整一下度量(例如,使用 TODAY()
而不是 maxDate
)。
希望对您有所帮助。
我希望获得过去 3 个月的销售额总和。不包括本月未完成的月份。 我有这个 Dax,但它不接受 MAX 的 DATEADD。有什么解决方法吗?
测量 1 = 计算 ( SUM ( table1[销售额] ), DATESINPERIOD ( 表 1 [日期], DATEADD( MAX ( table1[date] ), -1,MONTH), -3, 月 ) )
DATEADD
函数需要一组日期来计算。这就是为什么它不适用于 MAX
,returns 单个值。查找更多 here.
您需要找到数据集中的最大日期,然后从日期table中筛选出当前月份。尝试以下措施:
Measure1 =
VAR maxDate =
CALCULATE(
MAX( 'Calendar'[Date] ),
ALL('Calendar' )
)
VAR firstDay = DATE( YEAR( maxDate ), MONTH( maxDate ), 1 )
VAR maxK =
CALCULATE(
MAX('Calendar'[Date] ),
'Calendar'[Date] < firstDay
)
VAR result =
CALCULATE(
SUM( AmountPaid[PaymentAmt] ),
DATESINPERIOD('Calendar'[Date], maxK, -3, MONTH )
)
return result
maxK
部分计算最大日期,不包括我的数据集中的最新月份。您必须根据需要稍微调整一下度量(例如,使用 TODAY()
而不是 maxDate
)。
希望对您有所帮助。