LeetCode(数据库)- 好友申请l:总体通过率

Posted Lux_Sun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode(数据库)- 好友申请l:总体通过率相关的知识,希望对你有一定的参考价值。

题目链接:点击打开链接

 

题目大意:略。

 

解题思路:1/0, 0/0 结果都为 NULL。

 

AC 代码

-- 解决方案(1)
WITH t1 AS(SELECT 1 id, COUNT(DISTINCT requester_id, accepter_id) up FROM RequestAccepted),
t2 AS(SELECT 1 id, COUNT(DISTINCT sender_id, send_to_id) down FROM FriendRequest)

SELECT IF(down = 0, 0.00, ROUND(up/down, 2)) accept_rate
FROM t1, t2
WHERE t1.id = t2.id

-- 解决方案(2)
select
round(
    ifnull(
    (select count(*) from (select distinct requester_id, accepter_id from request_accepted) as A)
    /
    (select count(*) from (select distinct sender_id, send_to_id from friend_request) as B),
    0)
, 2) as accept_rate;

以上是关于LeetCode(数据库)- 好友申请l:总体通过率的主要内容,如果未能解决你的问题,请参考以下文章

每日SQL打卡​​​​​​​​​​​​​​​DAY 7丨好友申请 I :总体通过率难度简单

LeetCode(数据库)- 好友申请II:谁有最多的好友

LeetCode:Database 26.好友申请 II :谁有最多的好友

sAP采购申请23815183的项目00010已被删除怎么办?

申请参加腾讯云自媒体分享计划,送代金券+CN域名

[SQL]597(表2行数/表1行数)+602(表的上下拼接)