【问题标题】:Dax Queries in ssasssas 中的 Dax 查询
【发布时间】:2017-08-07 09:10:34
【问题描述】:

下面的代码有什么问题

DEFINE
MEASURE DimDate[MyMeasure] = 
    COUNTROWS(DimDate)

EVALUATE DimDate[MyMeasure]

运行查询时出现以下错误:

Query (1, 1) 查询中指定的表达式不是有效的表表达式

【问题讨论】:

  • 运行查询时出现以下错误,Query (1, 1) The expression specified in the query is not a valid table expression.

标签: ssas dax ssas-tabular


【解决方案1】:

当您使用 DAX 作为查询语言时,您的 DAX 查询必须计算为表。

例如这个查询是有效的,因为它返回一个一列一行的表:

DEFINE MEASURE DimDate[MyMeasure] = COUNTROWS(DimDate)
EVALUATE
ROW("MyColumn", DimDate[MyMeasure])

但是这个查询会失败,因为它返回的是一个标量值而不是一个表:

DEFINE MEASURE DimDate[MyMeasure] = COUNTROWS(DimDate)
EVALUATE DimDate[MyMeasure]

您可以从Microsoft here 找到语法文档。

请注意,这与在表格模型中定义度量或计算列不同。度量值或计算列的表达式应始终计算为标量值。

【讨论】:

  • yuuup dude 就像魅力一样,我无法为你的回答投票,我没有足够的声誉
  • 你能说出什么函数返回标量值以及什么函数返回表
  • 酷。如果它解决了您的问题,请将其标记为答案。然后其他人也可以从中受益。在 Microsoft 的文档中,他们应该始终说明函数的返回类型是什么。当您使用 DAX 作为查询语言时,最终结果应该是一个表格 - 有点像您使用 SQL 作为查询语言时。
  • 酷哥,实际上我对表格模型和 DAX 查询很陌生,所以您有任何建议
  • 稍后我会尝试在答案中添加更多细节,以便更好地解释这一点
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-02
  • 2020-04-21
  • 1970-01-01
  • 2023-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多