Moją pierwszą myślą jest ulepszenie schematu i czy naprawdę musisz to zrobić.
Aby uprościć pytanie, wygląda na to, że chcesz ustawić nazwę kolumny na podstawie sprzężenia z mstBCE. Nie potrzebujesz relacji, ponieważ liczba kolumn w tblBCE jest stała. Zamiast tego użyj dynamicznego sql, aby ustawić nazwy kolumn wybierające z mstBCE przesunięte na jeden wiersz.
DECLARE @sql nvarchar(4000);
SELECT @sql = N'SELECT u.[username], u.[department],
b.[Option1TB] as [' + pvt.[1] + N'], b.[Option1],
b.[Option2TB] as [' + pvt.[2] + N'], b.[Option2],
b.[Option3TB] as [' + pvt.[3] + N'], b.[Option3]
FROM tblBCE as b
JOIN tblUser as u ON b.[UserID] = u.[userid]; '
FROM (
SELECT [tabconfigid], [tabdata]
FROM mstBCE
WHERE [tabType] = N'BCE'
) as m
PIVOT ( MIN(m.[tabdata]) FOR m.[tabconfigid] IN ([1], [2], [3]) ) as pvt;
EXEC (@sql);