데이터 분석 기술 블로그

Confirmation Rate _ Medium. LeetCode 본문

SQL/문제풀이

Confirmation Rate _ Medium. LeetCode

데이터분석가 이채은 2025. 1. 7. 21:12

SELECT s.user_id,
       ROUND(IFNULL(SUM(CASE WHEN c.action = 'confirmed' THEN 1 ELSE 0 END) / COUNT(c.user_id), 0), 2) AS confirmation_rate
FROM Signups s
LEFT JOIN Confirmations c
ON s.user_id = c.user_id
GROUP BY s.user_id;
  • JOIN을 사용하지 않으면 Signups에 있는 user_id가 반영이 안 된다.
  • IFNULL을 사용해서 NULL일 때 0이라는 조건을 넣지 않으면 Confirmations 테이블에 없는 user_id에는 confirmation_rate가 NULL로 나타난다. 우리는 0이 필요하므로 IFNULL을 사용했다.