[LeetCode] 512. Game Play Analysis II
2022. 11. 27. 16:08ㆍTIL💡/Algorithms
https://leetcode.com/problems/game-play-analysis-ii/
player_id별로 최초 사용한 device_id를 출력한다.
대신 이번에는 GROUP BY를 사용하지 않고, player_id와 최소 event_date를 뽑아서 이와 매치되는 row를 출력해 player_id, device_id를 출력한다.
즉 앞서 풀었던 1단계를 활용하되, 더 나아가야 한다.
Algorithm
1. Select a single tuple for each player, namely (player_id, event_date), where event_date is the earliest occurring event_date for the player in question
2. Identify all rows in the Activity table whose player_id and event_date values match those in the tuple described above, and select the corresponding player_id and device_id vavlues from these rows.
SELECT
A1.player_id,
A1.device_id
FROM Activity A1
WHERE
(A1.player_id, A1.event_date) IN (
SELECT
A2.player_id,
MIN(A2.event_date)
FROM Activity A2
GROUP BY A2.player_id
);
'TIL💡 > Algorithms' 카테고리의 다른 글
[백준] 2631번: 줄세우기 (0) | 2022.12.09 |
---|---|
[백준] 5073번: 삼각형과 세 변 (0) | 2022.12.08 |
[백준] 17485번: 진우의 달 여행(Large) (0) | 2022.11.26 |
[백준] 17484번: 진우의 달 여행(Small) (0) | 2022.11.26 |
[백준] 햄버거 분배 (0) | 2022.11.19 |