Я пытаюсь получить записи на основе следующих условий.
Таблица: хранилище
Схема:
create table store (product varchar(50),product_id number,product_type varchar(10),product_flag char(1),product_upd_dt Date);
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',123,'GALA','Y','16-MAR-20 06.49.05');
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',123,'GALA','N','16-MAR-20 06.49.05');
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',134,'JAZZ','N','16-MAR-20 06.49.05');
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',134,'JAZZ','N','14-MAR-20 06.49.05');
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',134,'JAZZ','N','15-MAR-20 06.49.05');
insert into store(product,product_id,product_type,product_flag,product_upd_dt)values('Apple',13,'ENVY','Y','15-MAR-20 06.49.05');
commit;
1) Из этого я хочу получить product_id, основываясь на product_flag = 'Y'
2) Если product_flag равен 'N', то получить самый последний обновленный product_id.
3) Один продукт может быть сопоставлен с одним и тем же product_id, но разными product_types.
4) Можно повторить одну и ту же строку, но разница в product_upd_dt
Вот пример.
Входное изображение
Вот ожидаемый результат -
Выходное изображение
Заранее спасибо.