0

我有在 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条件以获取所有Dimension Names不以“ Fact”开头的内容?在 T-SQL 中它是这样写的

AND [DIMENSION_UNIQUE_NAME] NOT LIKE 'Fact%'

但是如何在MDX中编写它?


根据评论编辑:

如何编写查询,以便我可以过滤掉名称中以“ 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
4

1 回答 1

1

将倒数第二行替换为:

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

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

于 2015-11-16T15:17:35.240 回答