MDX "not in" SQL 对 where 子句的模拟是什么?
What is MDX "not in" SQL's analog for where clause?
在SQL我可以这样写:
SELECT some_column_1, some_column_2 FROM some_table WHERE some_column_3 NOT IN ("blah", "bleh", "meh");
如何在 MDX 中做同样的事情?请注意 some_column_3 未被选中,但用作过滤器。
我知道 MDX 中的 EXCEPT 东西,但我只能将它用于在轴上选择的东西。如何将它放在 WHERE 子句中?或者如何用其他东西获得相同的结果?
例如,我需要这样的东西:
SELECT some_measure ON COLUMNS FROM [Model] WHERE some_hierarchy NOT IN ("blah", "bleh", "meh");
IN MDX 如果您想要除任何特定成员之外的维度属性的所有成员,请使用以下语法
Dim1.attrubute1.children - Dim1.attrubute1."member value you dont want"
因此您的查询将转换为
select
([措施].[第 1 列])
在专栏上,
(
[dim1].[column2].children
)
在哪里
([dim1].[column2].children - {[dim1].[column2].[blah],[dim1].[column2].[bleh],[dim1].[column2].[meh]})
您可以像这样使用 Except
函数或其缩写 -
(减号):
SELECT [Measures].[some_measure] ON COLUMNS
FROM [Model]
WHERE {-{[Some Dimension].[some_hierarchy].[blah], [Some Dimension].[some_hierarchy].[bleh], [Some Dimension].[some_hierarchy].[meh]}}
在SQL我可以这样写:
SELECT some_column_1, some_column_2 FROM some_table WHERE some_column_3 NOT IN ("blah", "bleh", "meh");
如何在 MDX 中做同样的事情?请注意 some_column_3 未被选中,但用作过滤器。 我知道 MDX 中的 EXCEPT 东西,但我只能将它用于在轴上选择的东西。如何将它放在 WHERE 子句中?或者如何用其他东西获得相同的结果?
例如,我需要这样的东西:
SELECT some_measure ON COLUMNS FROM [Model] WHERE some_hierarchy NOT IN ("blah", "bleh", "meh");
IN MDX 如果您想要除任何特定成员之外的维度属性的所有成员,请使用以下语法
Dim1.attrubute1.children - Dim1.attrubute1."member value you dont want"
因此您的查询将转换为
select ([措施].[第 1 列]) 在专栏上, ( [dim1].[column2].children ) 在哪里 ([dim1].[column2].children - {[dim1].[column2].[blah],[dim1].[column2].[bleh],[dim1].[column2].[meh]})
您可以像这样使用 Except
函数或其缩写 -
(减号):
SELECT [Measures].[some_measure] ON COLUMNS
FROM [Model]
WHERE {-{[Some Dimension].[some_hierarchy].[blah], [Some Dimension].[some_hierarchy].[bleh], [Some Dimension].[some_hierarchy].[meh]}}