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