Dette svarer muligvis ikke direkte på dit spørgsmål, men hvis du har flere dimensioner, der er tæt beslægtede og ofte bruges sammen, kan du konsolidere dem til en "minidimension " der har alle mulige kombinationer af område, distributør og forhandler (se mit svar til et andet spørgsmål ):
create table dbo.DIM_TerritorySalesChannels (
TerritorySalesChannelID int not null primary key,
TerritoryName nvarchar(100) not null,
RetailerName nvarchar(100) not null,
DistributorName nvarchar(100) not null,
/* other attributes */
)
Dette kan i begyndelsen virke akavet, men det er faktisk ret nemt at udfylde og administrere a> og det undgår kompleksiteten af forhold mellem dimensioner, som ofte bliver rodet (som du har opdaget). Det er klart, at du ender med én meget stor dimension i stedet for tre mindre, men som jeg nævnte i det andet svar, har vi flere hundrede tusinde rækker i én dimension, og det har aldrig været et problem for os.