题解 | #异常的邮件概率#

异常的邮件概率

http://www.nowcoder.com/practice/d6dd656483b545159d3aa89b4c26004e

题目要我们找到邮件异常的概率:

简单分析分为三个步骤

  1. 找到那天所有发送的邮件总数 sum 表一
  2. 找到那天所有发送失败的邮件总数 fal 表二
  3. sum/fal 就是发送失败的概率,所以我们要把两张表连接起来

找到那天所有发送的邮件总数 sum 表一

select date,count(*) as su from email
where receive_id!=2 
and send_id!=2
group by date

找到那天所有发送失败的邮件总数 fal 表二

select date,count(*) as fa from email
where receive_id!=2 
and send_id!=2
and type='no_completed'
group by date

用内连接将两张表连接起来, 概率:round(b.fa/a.su,3) p

select a.date ,round(b.fa/a.su,3) p 
from
(select date,count(*) as su from email
where receive_id!=2 
and send_id!=2
group by date) a
,
(select date,count(*) as fa from email
where receive_id!=2 
and send_id!=2
and type='no_completed'
group by date) b
where a.date=b.date;
全部评论

相关推荐

自学java狠狠赚一...:骗你点star的,港卵公司,记得把star收回去
点赞 评论 收藏
分享
lllllkin:感觉可以精简到一页简历,有些排版感觉不是必须的。 时间线越早的,你自己越熟悉的放前面。描述可以更精简些,一些问题解决感觉可以不用写具体技术栈,卖个关子,等面试官问。
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务