if those values (BabyBoomer
,GenY
) were string and not column, you need to wrap it with single quotes because they are string literals not identifiers.
SELECT Birthdate,
(CASE WHEN Birthdate <= '12/31/2964'
THEN 'BabyBoomer'
WHEN Birthdate >= '1/1/1980'
THEN 'GenY'
WHEN Birthdate BETWEEN '1/1/1965' AND '12/31/1979'
THEN 'GenY'
ELSE NULL
END) AS Generation
FROM dbo.All_Employee_Detail
GROUP BY Birthdate
UPDATE 1
SELECT Birthdate,
(CASE WHEN Birthdate BETWEEN '1/1/1980' AND '12/31/2964'
THEN 'BabyBoomer'
WHEN Birthdate BETWEEN '1/1/1965' AND '12/31/1979'
THEN 'GenY'
ELSE NULL
END) AS Generation
FROM dbo.All_Employee_Detail
GROUP BY Birthdate