2016-05-17 89 views
0

我想从Dimension.Car列出所有从多维数据集中具有状态IsPremium = 1的车辆。 并且还,所有汽车从Dimension.Car一个单独的列表,它具有状态IsFourWeeler = 1列出维度属性值过滤的所有维度成员

维度具有属性如下:1. 汽车代码 2.汽车名称 3. IsPremium 4. IsFourWheeler

回答

1

如果它们在相同的维度中是不同的层次(属性或用户层次结构),则可以使用函数EXISTS

这里定义:https://msdn.microsoft.com/en-us/library/ms144936.aspx?f=255&MSPPError=-2147217396

他们表现出相同的情况为例:

SELECT 
    [Measures].[Internet Sales Amount] ON 0, 
    EXISTS(
    [Customer].[Customer].[Customer].MEMBERS 
, {[Customer].[State-Province].&[CA]&[US]} 
) ON 1 
FROM [Adventure Works]; 

但是你必须

SELECT 
    [Measures].[SomeMeasuresInCube] ON 0, 
    EXISTS(
    [Dimension.Car].[Car].MEMBERS 
    , [[Dimension.Car]].[IsPremium].[1] 
) ON 1 
FROM [YourCube]; 

NonEmpty也可能是您的朋友:

WITH SET [SpecialCars] AS 
    NONEMPTY(
    [Dimension.Car].[Car].MEMBERS 
    ,([[Dimension.Car]].[IsFourWheeler].[1]) 
) 
SELECT 
    [Measures].[SomeMeasuresInCube] ON 0, 
    [SpecialCars]  ON 1 
FROM [YourCube];