我是MDX新手,我正在尝试将日期过滤器应用于日期层次结构,即我希望计算每个产品编号的所有销售额,不包括NA,日期大于2016年1月1日。
立即写我正在使用以下查询:
SELECT NON EMPTY { [Measures].[SALES COUNT] } ON COLUMNS
, NON EMPTY { ([PRODUCT CRIETERIA].[PRODUCT NUMBER].[PRODUCT NUMBER].ALLMEMBERS ) }
DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS
FROM
(
SELECT
( -{ [PRODUCT CRIETERIA].[PRODUCT NUMBER].&[NA] } ) ON COLUMNS
FROM
(
SELECT
(
{
[PRODUCT Creation Date].[PRODUCT Creation Date Hierarchy].[PRODUCT Creation Year].&[2016],
[PRODUCT Creation Date].[PRODUCT Creation Date Hierarchy].[PRODUCT Creation Year].&[2017]
}
)
ON COLUMNS FROM [Product_QA]))
WHERE ( [PRODUCT Creation Date].[PRODUCT Creation Date Hierarchy].CurrentMember )
CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS
但上面的查询工作正常,但不正确,因为我必须每年手动更改此查询。 我希望结果日期> 2016年1月1日 我怎样才能使用比这更大的结果来获得理想的结果。
感谢。
答案 0 :(得分:0)
我找到了解决方案 - 通常在使用日期维度时,任一侧的NULL
冒号范围运算符都会给出一侧打开的范围,例如: 2016年及以上
[PRODUCT Creation Date].[PRODUCT Creation Date Hierarchy].[PRODUCT Creation Year].&[2016]
: NULL
直到2016年:
NULL:
[PRODUCT Creation Date].[PRODUCT Creation Date Hierarchy].[PRODUCT Creation Year].&[2016]