Såvitt jag kan se måste du gå med i DimAccounts
till sig själv för att associera konton av B-typ med deras motsvarande konton av S-typ, och sedan gå med i den raden som är inställd på FactBudget
för att äntligen få fram siffrorna. Något så här:
SELECT
f.TimeKey,
s.AccountKey,
SUM(f.Debit) AS Debit,
SUM(f.Credit) AS Credit
FROM DimAccounts s
INNER JOIN DimAccounts b ON b.AccountCode BETWEEN s.AccountFrom AND s.AccountTo
INNER JOIN FactBudget f ON f.AccountKey = b.AccountKey
WHERE s.AccountType = 'S'
AND b.AccountType = 'B'
GROUP BY
f.TimeKey,
s.AccountKey