2016-07-13 64 views
0

我有两个维度,比如说“Dimension1”和“Dimension2” 这两个维度应该是相关的,就像Dimension1在Dimension2中可以有一个或多个记录一样。关联SSAS立方体中的二维

要涉及,我有一个中间表,说“Dimension12”

样本值如下。

DIMENSION1

Column 1 
A 
B 
C 

DIMENSION2

Column2 
X 
Y 
Z 

Dimension12

Column1 Column2 
A  X 
A  Y 
B  X 
C  Y 
C  Z 

在DSV我相关使用“Dimension12”表中的这些2个表。创建了两个新维度,Dimension1和Dimension2。部署和处理的多维数据集。

现在,当我查询时,我使用Dimension1中的Column1和Dimension2中的Column2,这并不给我所需的结果,我想在A下看到X和Y,而是它给了我所有类似于A,下的X,Y,Z和B,X,Y,Z下的X,Y,Z和C下。尺寸之间的关系没有发生。我不希望他们通过事实进行关联。

你可以请帮助我在这里失踪。或者是否有可能这样做。

+0

我想知道你为什么没有在一个维度下建立2层次的层次结构。 – ebayindir

回答

0

问题与Dimension12。

应该使用完全外部生成加入如果(有任何连接键。)

否则为交叉联接DIMENSION1的和维度2的情况下,没有关系应该被创建。

你Dimension12应该有以下数据的注释后

Column1 Column2 
A  x 
B  x 
C  x 
A  y 
B  y 
C  y 

编辑。

在情况下,我们DONOT在DIMENSION1和DIMENSION2关系

步骤1>创建表Dimension12

Create table Dimension12 
(id int identity (1,1),-- as i would required a surrogate key for referencing in fact. 

Column1 varchar(50), 

Column2 varchar(50)) 


    insert into Dimension12 (Column1,Column2) 
    select d1.Column1,d2.Column2 from Dimension1 d1,Dimension2 d2 

步骤2>一次填充数据

insert into Dimension12 (Column1,Column2) 
select d1.Column1,d2.Column2 from Dimension1 d1,Dimension2 d2 

第3步>使更新einsert ETL填充Dimension12 tbale。

step 4>在DSV中使用Dimension12(表格或视图顶部)。

现在你很好走..

+0

Dimension12确实具有您所说的数据。但是我没有说你对全外连接的意见,如果你在Dimension1和Dimension1中没有任何关系,DSV确实有关系,主“Dimension1”外键“Dimension12”和主键“Dimension2”外键“Dimension12” – Harsha

+0

该案例交叉加入/ CARTESIAN JOIN即选择d1.Column1,d2.Column2从Dimension1 d1,Dimension2 d2 ..我将在答案中增加更多的细节... –

+0

谢谢,但我不知道它如何解决我的问题。我不想要caterian产品数据。 Dimension12已经在尺寸1和尺寸2之间有关系,如果这种情况我不明白为什么我需要再次插入catesian产品。可能我没有得到。问题是我模拟它,仍然没有发生关系。我正在使用dimension12来关联。如果我使用Dimension1中的Colum1和Dimension2中的Column2,那么它应该显示关系,这不会发生。 – Harsha