У меня есть таблица asg_table
со столбцами effective_start_date
и effective_end_date
.
asg_table :
asg_number effective_start_date effective_end_date location department action_code
1 01-jan-2018 20-jan-2018 HR HIRE
1 21-JAN-2018 18-FEB-2018 Vietnam HR CHANGE_ASG
1 19-FEB-2018 28-feb-2018 Vietnam Manegment TERMINATION
1 01-jul-2018 31-Dec-2019 Payroll HIRE
1 01-jan-2019 31-dec-4712 Peru Payroll CHANGE_ASG
2 01-feb-2019 01-apr-2019 HR HIRE
2 02-APR-2019 31-DEC-4712 Vietnam Payroll CHANGE_ASG
Я хочу создать такой запросчто приходит последняя дата эффективное_старт с HIRE кода_ действия, местоположение которой равно нулю, т. е. в этом случае asg_number 1 должен вернуть 01-июль-2018 в качестве значения_действия_файла, где местоположение равно нулю. в случае asg_number 2 запрос должен вернуть 01-feb-2019, где location равно null
Есть ли функция для поиска последней датыative_start_Date?
Я нашел последний пост для первогоffective_start_Date полезным, ноэто находит ПЕРВУЮ ЭФФЕКТИВНУЮ ДАТУ НАЧАЛА, А НЕ ПОСЛЕДНЮЮ.
Select * from
(Select t.*,
Row_number() over
(partition by t.employee_id order by t.effective_start_date) as rn
From asg_table t
Where t.location is null
AND t.action_code = 'HIRE')
Where rn = 1;