Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Create table joborder (
- jo_no int(10),
- jo_date datetime,
- jo_status char(10)
- );
- insert into joborder values( 1,'01-03-13','A');
- insert into joborder values( 2,'01-03-13','A');
- Insert into joborder values (3,'01-03-13','A');
- insert into joborder values( 4,'04-03-13','A');
- insert into joborder values(5,'08-03-13','B');
- insert into joborder values( 6,'12-03-13','C');
- Date TotalJoborder A B C
- ---------------------------------------------
- 01-03-13 3 3 0 0
- 04-03-13 1 0 1 0
- 08-03-13 1 0 1 0
- 12-03-13 1 0 0 1
- Date TotalJoborder A B C
- ---------------------------------------------
- 01-03-13 3 3 0 0
- 04-03-13 4 3 1 0
- 08-03-13 5 3 1 1
- 12-03-13 6 4 1 1
- select jo_date,
- count(*) as total_job_order,
- sum(case when jo_status= 'A' then 1 else 0 end) as status_a,
- sum(case when jo_status= 'B' then 1 else 0 end) as status_b,
- sum(case when jo_status= 'C' then 1 else 0 end) as status_c
- from joborder
- group by jo_date
- order by jo_date;
- select jo_date,
- (select count(*) from joborder j2 where j2.jo_date <= t1.jo_date) as running_sum,
- status_b,
- status_c
- from (
- select jo_date,
- sum(case when jo_status= 'A' then 1 else 0 end) as status_a,
- sum(case when jo_status= 'B' then 1 else 0 end) as status_b,
- sum(case when jo_status= 'C' then 1 else 0 end) as status_c
- from joborder
- group by jo_date
- order by jo_date
- ) t1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement