【问题标题】:SSAS DMV's NOT LIKE ConditionSSAS DMV 的不喜欢条件
【发布时间】:2015-11-16 13:08:28
【问题描述】:

我的查询在 SSAS 上运行正常。

SELECT  DIMENSION_NAME
FROM  $SYSTEM.MDSCHEMA_DIMENSIONS
WHERE LEFT(CUBE_NAME,1) = '$'
AND [DIMENSION_UNIQUE_NAME] <> '[Metrics]'
AND [DIMENSION_UNIQUE_NAME] <> '[Measures]'
ORDER BY DIMENSION_NAME

我应该如何指定NOT LIKE 条件以获取所有不以“Fact”开头的Dimension Names?在 T-SQL 中是这样写的

AND [DIMENSION_UNIQUE_NAME] NOT LIKE 'Fact%'

但是如何在 MDX 中编写呢?


基于 cmets 编辑:

如何编写查询以便过滤掉名称中以“Fact”开头的元素?

以下查询返回错误:

SELECT  DIMENSION_NAME ,*
FROM  $SYSTEM.MDSCHEMA_DIMENSIONS
WHERE LEFT(CUBE_NAME,1) = '$'
AND [DIMENSION_UNIQUE_NAME] <> '[Metrics]'
AND [DIMENSION_UNIQUE_NAME] <> '[Measures]'
AND [DIMENSION_UNIQUE_NAME] NOT LIKE 'Fact%'
ORDER BY DIMENSION_NAME

-

Executing the query ...
Query (6, 29) The syntax for 'NOT' is incorrect.
Execution complete

【问题讨论】:

  • DMV 并不打算用 MDX 编写。 MDX 用于查询多维数据集的数据,其中 DMV 用于查询多维数据集属性。
  • 也许我稍微改变了条款。我想要做的是在 SSMS 中的 SSAS 服务器上运行它以获取多维数据集属性,但按名称过滤维度/元素。
  • 我同意 SouravA - 坚持使用 sql:我认为 dmv 将是一个关系表,因此 mdx 无济于事

标签: sql ssas sql-like dmv


【解决方案1】:

将倒数第二行替换为:

AND LEFT([DIMENSION_UNIQUE_NAME], 4) <> 'Fact'

希望您在SSMS 上的新DMX 查询窗口中运行该语句

【讨论】:

  • 是的,确实很聪明。我将解决这个问题,因为唯一名称以 [ .. as [unique_name] .. 开头,但这应该没问题。谢谢。
猜你喜欢
  • 1970-01-01
  • 2015-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-26
  • 1970-01-01
相关资源
最近更新 更多