Для псевдонимов столбцов, которые определены в списке выбора (включая псевдонимы для выражений), вы не можете ссылаться на них в предложении WHERE по этому псевдониму, так как они «еще не существуют» в этой точке. Вы можете скопировать выражение в предложение WHERE. Но на самом деле вы можете переместить в предложение WHERE, так как нет смысла хранить его в списке выбора только для того, чтобы вернуть столбец со всеми 1.
Если по какой-то причинеВы хотите ссылаться на выражение в обоих местах, но не хотите повторять текст, вы можете заключить свой выбор в другой выбор. В этот момент псевдоним внутреннего запроса становится доступным для WHERE внешнего запроса.
select * from (
SELECT *,
CASE WHEN employee_team.joined <= '2019-05-01'
and '2019-05-31' <= employee_team.left
THEN 1 ELSE 0 END AS InTeamAtTime
FROM employee_team
INNER JOIN employee ON employee.id = employee_team.employee_id
) foobar
WHERE InTeamAtTime = 1
ORDER BY first_name
Кроме того, ваш оператор CASE может быть тривиально записан непосредственно как логическое выражение, но я предполагаю, что вы действительно хотите что-то большеетам сложно.