where子句中的MDX筛选器成员与From子句中的筛选器成员

where子句中的MDX筛选器成员与From子句中的筛选器成员,mdx,where-clause,subquery,Mdx,Where Clause,Subquery,在冒险作品中,这两种情况之间的区别是什么: 1) From子句中的筛选器成员: with member [existing_categries_Member_Count]as count(existing[Product].[Category].[Category].members) member [existing_subcategries_Member_Count]as count(existing[Product].[subCategory].[subCategory].m

在冒险作品中,这两种情况之间的区别是什么:

1) From子句中的筛选器成员:

with
member [existing_categries_Member_Count]as
    count(existing[Product].[Category].[Category].members)
member [existing_subcategries_Member_Count]as
    count(existing[Product].[subCategory].[subCategory].members)
select 
{
    [existing_subcategries_Member_Count],
    [existing_categries_Member_Count]
} on 0
FROM (
    SELECT [Product].[Subcategory].&[31] ON 0
    FROM [Adventure Works])

结果:

existing_subcategries_Member_Count  existing_categries_Member_Count
                    37                            4
及 2) WHERE子句中的筛选器成员:

with
member [existing_categries_Member_Count]as
    count(existing[Product].[Category].[Category].members)
member [existing_subcategries_Member_Count]as
    count(existing[Product].[subCategory].[subCategory].members)
select 
{
    [existing_subcategries_Member_Count],
    [existing_categries_Member_Count]
} on 0
FROM [Adventure Works]
WHERE [Product].[Subcategory].&[31]

结果:

existing_subcategries_Member_Count  existing_categries_Member_Count
                   1                              1
我希望这两个查询的结果相同,但我看到的结果不同。 请告诉我WHERE和SUbcube的区别 谢谢

  • 在WHERE子句中放置成员时,将覆盖默认成员(上下文已更改)

  • 评估后,
    [Product].[Subcategory]
    上的当前成员仍然是
    [Product].[Subcategory].[All Products]

由于您在计算成员中使用了关键字,因此无法获得相同的结果。如果删除它,两个查询将给出相同的结果