Not sure why your LEFT JOIN didn't work but just to illustrate the idea:
--This is a list of All location groups
CREATE TABLE #LocationGroups(
LocationGroup VARCHAR(20) PRIMARY KEY
);
INSERT INTO #LocationGroups(LocationGroup)
SELECT 'AAA' UNION ALL
SELECT 'BBB' UNION ALL
SELECT 'CCC' UNION ALL
SELECT 'DDD' UNION ALL
SELECT 'EEE'
--This is your current data with some location groups missing
CREATE TABLE #ReportData(
LocationGroup VARCHAR(20)
,SomeOtherData VARCHAR(100)
);
INSERT INTO #ReportData(LocationGroup, SomeOtherData)
SELECT 'AAA', 'DataA1' UNION ALL
SELECT 'AAA', 'DataA3' UNION ALL
SELECT 'CCC', 'DataC1' UNION ALL
SELECT 'EEE', 'DataE1' UNION ALL
SELECT 'EEE', 'DataE2' UNION ALL
SELECT 'EEE', 'DataE3'
--This is Left join that will produce dataset with all location groups.
SELECT
LG.LocationGroup
,RD.SomeOtherData
FROM #LocationGroups AS LG
LEFT OUTER JOIN #ReportData AS RD
ON LG.LocationGroup = RD.LocationGroup
--Cleanup
DROP TABLE #LocationGroups;
DROP TABLE #ReportData;
--Vadim R.