Expected Output:
create table t_order(prod varchar2(10),
status_date date,
customer varchar2(30),
status varchar2(10));
insert into t_order values('P1',to_date('01/JUL/2020','DD/MON/YYYY'),'RAVI','ordered');
insert into t_order values('P1',to_date('03/JUL/2020','DD/MON/YYYY'),'RAVI','dispatched');
insert into t_order values('P1',to_date('05/JUL/2020','DD/MON/YYYY'),'RAVI','delivered');
insert into t_order values('P2',to_date('01/JUL/2020','DD/MON/YYYY'),'SRIKANTH','ordered');
insert into t_order values('P2',to_date('05/JUL/2020','DD/MON/YYYY'),'SRIKANTH','dispatched');
insert into t_order values('P2',to_date('10/JUL/2020','DD/MON/YYYY'),'SRIKANTH','delivered');
insert into t_order values('P1',to_date('01/JUL/2020','DD/MON/YYYY'),'SURESH KODI','ordered');
insert into t_order values('P1',to_date('05/JUL/2020','DD/MON/YYYY'),'SURESH KODI','dispatched');
COMMIT;
select prod,customer,status_date,status from t_order
where STATUS in('ordered','delivered');
select prod,customer,status_date,status,
case when status = 'ordered' then status_date end o_date,
case when status = 'delivered' then status_date end o_date
from t_order
where STATUS in('ordered','delivered');
select PROD,CUSTOMER,
max(case when status = 'ordered' then status_date end) o_date,
max(case when status = 'delivered' then status_date end) o_date
from t_order
where STATUS in('ordered','delivered')
group by PROD,CUSTOMER ;
select PROD,CUSTOMER,
max(case when status = 'delivered' then status_date end)-max(case when status = 'ordered' then status_date end) o_date
from t_order
where STATUS in('ordered','delivered')
group by PROD,CUSTOMER ;
No comments:
Post a Comment