Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle seleciona registro de data mais recente


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