Listing 1: UNION ALL Alternative to GROUP BY ALL SELECT City, COUNT(*) AS NumEmps FROM dbo.Employees WHERE HireDate >= '19930101' GROUP BY City UNION ALL SELECT DISTINCT City, 0 AS NumEmps FROM dbo.Employees AS E1 WHERE NOT EXISTS (SELECT * FROM dbo.Employees AS E2 WHERE E2.City = E1.City AND HireDate >= '19930101');