我正在尝试使用IN函数以表格形式显示分析服务,但是它返回了一个错误。我在同事的机器上尝试了同样的方法,并且运行正常。我已经卸载了数据工具2017和2015并再次安装。现在我只有SSDT 2015并有这个问题。
TestMeasureIN:=
CALCULATE(
COUNTROWS(DimDate),
DimDate[MonthName] IN {"may", "july"}
)
语义错误:“ IN”的语法不正确
答案 0 :(得分:3)
IN
函数在2017年之前的SSAS版本中将不可用,因此SSDT 2015将没有此功能。您可以使用CONTAINS
如下重写它。另外,我猜想TestMeasureIN
在您的事实表中,而不是DimDate
?如果是这样,请将COUNTROWS
更改为事实表以计算给定月份的行数。
TestMeasureIN:=
CALCULATE (
COUNTROWS ( FactTableName),
FILTER (
ALL ( DimDate[MonthName]),
CONTAINS (
DATATABLE ( "MonthName", STRING, { { "may", "july"} } ),
[MonthName], DimDate[MonthName]
)
)
)