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

异常的邮件概率

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

-- 1.排除所有黑名单用户(1.不在用户表的用户,2.在黑名单列中=1的黑名单用户) -- 2.计算邮件失败率(转化:成功邮件=0,失败邮件=1) -- 成功率=avg(失败邮件)


SELECT 
e.date,
round(
    avg(
        case e.type
        when "completed" then 0
        else 1
        end
        )-- 内层函数用于转化文本到数值方便聚合函数avg 求平均值(邮件发送的失败率,邮件成功=0,邮件失败=1)
,3)-- 外层函数用于保留到小数点后面3位
from    email e
join user u1 on e.send_id=u1.id and u1.is_blacklist=0 -- 发件人不在黑名单
join user u2 on e.receive_id=u2.id and u2.is_blacklist=0 -- 收件人不在黑名单
GROUP by e.date
order by e.date
全部评论

相关推荐

专业嗎喽:个人信息名字太大,合到电话邮箱那一栏就行,有党员写过党,剩下其他全删,站空太大了 把实习经历丰富,放最前面,然后是个人评价,技能之类的,然后是学校信息。项目经历最后面,可以就选一个自己擅长的。 现在是学校不是92就扣分的,没必要放前面。 然后现在看重实习经历>竞赛经历(校园经历)>课程项目经历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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