我有一个MDX-Query,结构如下:
第一栏:计划成本,年份:2015年,月份1月 - 12月
第二栏:实际成本,年份:2015年,月份1月份
第3栏:实际成本,年份:2015年,2月份
SELECT {
([YEAR].[2015], [MONTH].[ALL],[TYPE].[PLAN])
([YEAR].[2015], [MONTH].[1], [TYPE].[ACTUAL])
([YEAR].[2015], [MONTH].[2], [TYPE].[ACTUAL])}
ON COLUMNS,
{[xxx].[xxx]} ON ROWS
FROM [CUBE]
WHERE [MEASURES].[COSTS]
以上MDX-Code工作正常。
现在我想在查询中添加第4列,返回:
第4栏:实际成本,年份:2015年,Janury月 - 2月
如何在MDX中实现这一目标?
或多或少看起来应该是这样......
SELECT {
([YEAR].[2015], [MONTH].[ALL], [TYPE].[PLAN])
([YEAR].[2015], [MONTH].[1], [TYPE].[ACTUAL])
([YEAR].[2015], [MONTH].[2], [TYPE].[ACTUAL])
([YEAR].[2015], [MONTH].[1-2], [TYPE].[ACTUAL]) ???
}
ON COLUMNS,
{[xxx].[xxx]} ON ROWS
FROM [CUBE]
WHERE [MEASURES].[COSTS]
答案 0 :(得分:0)
我想也许WITH
子句中两个月的聚合应该足够了:
WITH MEMBER [MONTH].[1-2] AS
AGGREGATE(
{
[MONTH].[1]
,[MONTH].[2]
}
)
SELECT
NON EMPTY
{
([YEAR].[2015], [MONTH].[ALL], [TYPE].[PLAN])
([YEAR].[2015], [MONTH].[1], [TYPE].[ACTUAL])
([YEAR].[2015], [MONTH].[2], [TYPE].[ACTUAL])
([YEAR].[2015], [MONTH].[1-2], [TYPE].[ACTUAL])
}
ON COLUMNS,
NON EMPTY
{[xxx].[xxx]} ON ROWS
FROM [CUBE]
WHERE [MEASURES].[COSTS];