是否可以在 MDX 查询中放置两个或多个数据范围?
这部分mdx查询:
FILTER([Time].[Date].MEMBERS,[Time].CURRENTMEMBER IN([Time].[2013].[2].[2013-02-01] : [Time].[2014].[7].[2014-07-07]))
转换为SQL是:
WHERE Date BETWEEN '2013-02-01' AND '2014-07-07'
我想在 MDX 中实现什么:
SQL:
WHERE (Date BETWEEN '2013-02-01' AND '2014-07-07') OR (Date Between '2012-07-06' AND '2012-08-17');
最佳答案
“:”运算符只是在两个成员(包括两个成员)之间创建一个自然排序的所有成员集。
您可以使用集合表示法创建一个包含其他集合的元素的集合,只要它们位于同一层次结构中即可。
FILTER([Time].[Date].MEMBERS,[Time].CURRENTMEMBER IN(
{
[Time].[2013].[2].[2013-02-01] : [Time].[2014].[7].[2014-07-07],
[Time].[2012].[7].[2012-07-06] : [Time].[2012].[8].[2012-08-17]
})
关于sql - 具有两个或多个日期范围的 MDX 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25275637/