select e.date,round(if(c2 is null,0,c2)/c1,3) p from (select date,count(type) c1 from email where send_id in(select id from user where is_blacklist=0) and receive_id in(select id from user where is_blacklist=0) group by date) e left join (select date,count(type) c2 from email where type='no_completed' and send_id in(select id from user where is_blacklist=0) and receive_id in(select id from user where is_blacklist=0) group by date ) en on e.date=en.date order by date