você não pode usar aliases da lista de seleção dentro da cláusula WHERE (por causa da Ordem de avaliação de uma instrução SELECT )
você também não pode usar
OVER
cláusula dentro da cláusula WHERE - "Você pode especificar funções analíticas com esta cláusula na lista de seleção ou na cláusula ORDER BY." (citação de docs.oracle.com ) select *
from (select
staff_id, site_id, pay_level, date,
max(date) over (partition by staff_id) max_date
from owner.table
where end_enrollment_date is null
)
where date = max_date