如何在SSAS中删除Set?

时间:2013-11-20 10:21:18

标签: sql sql-server-2008-r2 ssas mdx olap

我使用SQL Server 2008 R2SSAS以及AdventureWork数据库。

我写了这个MDX Query但是我得到了这个错误,因为我在执行之前没有创建这个Set

-- select from named set
Select
    [Europe] on columns
From [Adventure Works]
Where 
[Measures].[Internet Sales Amount]

Executing the query ...
Query (3, 6) The dimension '[Europe]' was not found in the cube when the string,
[Europe], was parsed.

Execution complete

我使用此mdx query创建Set

create 
set [Adventure Works].[Europe] as
    {
        [Customer].[Customer Geography].[Country].[France],
        [Customer].[Customer Geography].[Country].[Germany],
        [Customer].[Customer Geography].[Country].[United Kingdom]
    }

然后我在Set

中使用此MDX Query
-- select from named set
Select
    [Europe] on columns
From [Adventure Works]
Where 
[Measures].[Internet Sales Amount]

enter image description here

然后我放弃Set

-- drop set

drop set [Adventure Works].[Europe]

但如果我使用此Set,我会得到一个结果吗?!?

enter image description here

为什么我的套装不会完全掉落?

1 个答案:

答案 0 :(得分:1)

SalesTerritory维度中有一个成员,其值为Europe时未定义任何集合时使用。创建具有相同名称的集合时,将使用它。删除该集将导致查询再次使用Europe值。

我不确定你为什么会收到初始错误。确保对正确的数据库和多维数据集运行查询。

弄清楚价值的来源可能很棘手。幸运的是,SQL Profiler可以提供帮助。 enter image description here