✅ 코드
-- FROM절 서브쿼리 사용하면 항상 alias 지정해줘야 함
WITH ACC AS (
SELECT requester_id AS id
, COUNT(DISTINCT accepter_id) AS num
FROM RequestAccepted
GROUP BY requester_id
), REQ AS (
SELECT accepter_id AS id
, COUNT(DISTINCT requester_id) AS num
FROM RequestAccepted
GROUP BY accepter_id
), T1 AS (
SELECT *
FROM ACC
UNION ALL
SELECT *
FROM REQ
), T2 AS (
SELECT id
, SUM(num) AS num
FROM T1
GROUP BY id
)
SELECT *
FROM T2
WHERE num = (SELECT MAX(num) FROM T2)
WITH문으로 테이블을 여러개 생성한 후에 WHERE문 서브쿼리를 통해 원하는 데이터를 추출했습니다.
'알고리즘' 카테고리의 다른 글
[SQL]LeetCode sales analysis III (0) | 2024.01.21 |
---|---|
[SQL]LeetCode Managers with at least 5 direct reports (0) | 2024.01.19 |
[SQL]LeetCode Game Play Analysis IV (0) | 2024.01.18 |
[SQL]LeetCode Trips and Users (0) | 2024.01.18 |
[SQL]프로그래머스 Lv.4 자동차 대여 기록별 대여 금액 구하기 (0) | 2024.01.16 |
✅ 코드
-- FROM절 서브쿼리 사용하면 항상 alias 지정해줘야 함
WITH ACC AS (
SELECT requester_id AS id
, COUNT(DISTINCT accepter_id) AS num
FROM RequestAccepted
GROUP BY requester_id
), REQ AS (
SELECT accepter_id AS id
, COUNT(DISTINCT requester_id) AS num
FROM RequestAccepted
GROUP BY accepter_id
), T1 AS (
SELECT *
FROM ACC
UNION ALL
SELECT *
FROM REQ
), T2 AS (
SELECT id
, SUM(num) AS num
FROM T1
GROUP BY id
)
SELECT *
FROM T2
WHERE num = (SELECT MAX(num) FROM T2)
WITH문으로 테이블을 여러개 생성한 후에 WHERE문 서브쿼리를 통해 원하는 데이터를 추출했습니다.
'알고리즘' 카테고리의 다른 글
[SQL]LeetCode sales analysis III (0) | 2024.01.21 |
---|---|
[SQL]LeetCode Managers with at least 5 direct reports (0) | 2024.01.19 |
[SQL]LeetCode Game Play Analysis IV (0) | 2024.01.18 |
[SQL]LeetCode Trips and Users (0) | 2024.01.18 |
[SQL]프로그래머스 Lv.4 자동차 대여 기록별 대여 금액 구하기 (0) | 2024.01.16 |