从某些原因中,我需要将人工(虚拟)列插入MDX表达式。(原因是我需要获取具有特定列数的查询)

到iLustrate,这是我的样本查询:

SELECT {[Measures].[AFR],[Measures].[IB],[Measures].[IC All],[Measures].[IC_without_material],[Measures].[Nonconformance_PO],[Measures].[Nonconformance_GPT],[Measures].[PM_GPT_Weighted_Targets],[Measures].[PM_PO_Weighted_Targets], [Measures].[AVG_LC_Costs],[Measures].[AVG_MC_Costs]}    ON COLUMNS,
([dim_ProductModel].[PLA].&[SME])
*  ORDER(  {([dim_ProductModel].[Warranty Group].children)} , ([Measures].[Nonconformance_GPT],[Dim_Date].[Date Full].&[2014-01-01]) ,desc)   
* ([dim_ProductModel].[PLA Text].members  - [dim_ProductModel].[PLA Text].[All]) 
* {[Dim_Date].[Date Full].&[2013-01-01]:[Dim_Date].[Date Full].&[2014-01-01]} ON ROWS
FROM [cub_dashboard_spares]
.

不是很重要,只是一些措施和交叉尺寸。现在我需要添加f.e.2额外列,我不关心这是否是空/ 0值的度量或其他跨界维度。我可以用一些简单的方式做到这一点,而无需将任何数据插入我的多维数据集?

在SQL中,我可以只写入SELECT 0或选择“DUMMY1”,但在这里既不在行上也不是查询的一部分中的行。

非常感谢您的帮助,

问候,

peter

ps:到目前为止,我可以刚刚插入一些措施,但我很兴趣是否有可能插入真正的“虚拟”列

有帮助吗?

解决方案

您的查询只需在列上具有措施维度。通过某些列扩展它的最简单方法是重复最后一次测量,您可以获得正确的列数。

在最后一项度量复杂的情况下,可以更有效地进行另一种可能性,计算是使用

WITH member Measures.dummy as NULL
SELECT {[Measures].[AFR],[Measures].[IB],[Measures].[IC All],[Measures].[IC_without_material],[Measures].[Nonconformance_PO],[Measures].[Nonconformance_GPT],[Measures].[PM_GPT_Weighted_Targets],[Measures].[PM_PO_Weighted_Targets], [Measures].[AVG_LC_Costs],[Measures].[AVG_MC_Costs],
Measures.dummy, Measures.dummy, Measures.dummy
}
ON COLUMNS,

([dim_ProductModel].[PLA].&[SME])
*  ORDER(  {([dim_ProductModel].[Warranty Group].children)} , ([Measures].[Nonconformance_GPT],[Dim_Date].[Date Full].&[2014-01-01]) ,desc)   
* ([dim_ProductModel].[PLA Text].members  - [dim_ProductModel].[PLA Text].[All]) 
* {[Dim_Date].[Date Full].&[2013-01-01]:[Dim_Date].[Date Full].&[2014-01-01]}
ON ROWS

FROM [cub_dashboard_spares]
.

i。e。添加虚拟度量,不应多次需要多次计算到列的末尾。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top