알고리즘

[SQL]LeetCode Trips and Users

truezero 2024. 1. 18. 17:04

✅ 코드

SELECT request_at AS Day
    , ROUND(COUNT(DISTINCT CASE WHEN status LIKE '%cancelled%' THEN id END) / COUNT(DISTINCT id), 2) AS 'Cancellation Rate'
FROM Trips
WHERE request_at BETWEEN '2013-10-01' AND '2013-10-03'
  AND client_id IN (SELECT users_id
                 FROM Users
                 WHERE banned = 'No')
  AND driver_id IN (SELECT users_id
                 FROM Users
                 WHERE banned = 'No')
GROUP BY Day

다중행 서브쿼리를 사용하여 WHERE문의 조건을 설정했습니다.