Posted by Luming, Oct. 29, 2021, 6:29 p.m.
SQL 96
For this one, why we only apply DISTINCT to sender_id here?
WITH acceptance AS
(SELECT COUNT(*) as accept_cnt
FROM
(SELECT DISTINCT sender_id,recipient_id
FROM accepted_request) sub
),
request AS
(SELECT COUNT(*) as request_cnt
FROM
(SELECT DISTINCT sender_id,recipient_id
FROM friend_request) sub
)
SELECT a.accept_cnt *1.0/r.request_cnt as acceptance_rate
FROM acceptance as a,
request as r
WITH acceptance AS
(SELECT COUNT(*) as accept_cnt
FROM
(SELECT DISTINCT sender_id,recipient_id
FROM accepted_request) sub
),
request AS
(SELECT COUNT(*) as request_cnt
FROM
(SELECT DISTINCT sender_id,recipient_id
FROM friend_request) sub
)
SELECT a.accept_cnt *1.0/r.request_cnt as acceptance_rate
FROM acceptance as a,
request as r