SQL 数据仓库使用额外信息扩展维度
SQL datawarehousing extend dimension with extra info
我有一个包含广告信息的维度 core.DimAd。即
PK AdKey AdvertiserID CampaignID
1 Ad company 1 Campaign 1
2 Ad company 2 Campaign 2
3 Ad company 4 Campaign 3
然后我想创建一个新的扩展程序 table,例如 AdChannelExtension
PK ChannelExtensionKey Adkey Channel
1 1 Sales
2 1 Production
3 2 Sales
然后我想创建一个视图
VWDimAd
它在广告键上连接两个 table 并用作 SSAS 中的维度。但是,当它合并行时,它不是唯一的,并且由于重复的键而不会处理。你如何处理这种情况?我不能改变原来的 table。谢谢!
在您的视图中创建复合键并在 SSAS 中使用它:
select cast(a.AdKey as nvarchar(20))
+ '-'
+ cast(e.ChannelExtensionKey as nvarchar(20)) as AdAdChannelCompKey
,a.AdvertiserID
,a.CampaignID
,e.Channel
from DimAd a
inner join DimAdChannelExtension e
on(a.AdKey = e.AdKey)
我有一个包含广告信息的维度 core.DimAd。即
PK AdKey AdvertiserID CampaignID
1 Ad company 1 Campaign 1
2 Ad company 2 Campaign 2
3 Ad company 4 Campaign 3
然后我想创建一个新的扩展程序 table,例如 AdChannelExtension
PK ChannelExtensionKey Adkey Channel
1 1 Sales
2 1 Production
3 2 Sales
然后我想创建一个视图
VWDimAd
它在广告键上连接两个 table 并用作 SSAS 中的维度。但是,当它合并行时,它不是唯一的,并且由于重复的键而不会处理。你如何处理这种情况?我不能改变原来的 table。谢谢!
在您的视图中创建复合键并在 SSAS 中使用它:
select cast(a.AdKey as nvarchar(20))
+ '-'
+ cast(e.ChannelExtensionKey as nvarchar(20)) as AdAdChannelCompKey
,a.AdvertiserID
,a.CampaignID
,e.Channel
from DimAd a
inner join DimAdChannelExtension e
on(a.AdKey = e.AdKey)