SQL 코드카타
오늘부터는 leetcode에서 아직 안 풀었던 문제 풀기
5문제 풀이 완료 / 난이도 medium에서도 10분 이상 걸린 경우는 없었음
SELECT p.firstname,
p.lastname,
a.city,
a.state
FROM person p
LEFT JOIN address a
ON p.personid = a.personid;
WITH result
AS (SELECT score,
Dense_rank()
OVER (
ORDER BY score DESC) AS ranking
FROM scores)
SELECT score,
ranking AS 'rank'
FROM result
ORDER BY 1 DESC;
SELECT e1.name AS Employee
FROM employee e1
INNER JOIN employee e2
ON e1.managerid = e2.id
WHERE e1.salary > e2.salary;
WITH result
AS (SELECT d.NAME Department,
e.NAME Employee,
e.salary,
Dense_rank()
OVER(
partition BY d.NAME
ORDER BY salary DESC) AS ranking
FROM employee e
INNER JOIN department d
ON e.departmentid = d.id)
SELECT department,
employee,
salary
FROM result
WHERE ranking = '1';
WITH result
AS (SELECT email,
Count(*) AS cnt
FROM person
GROUP BY 1)
SELECT email
FROM result
WHERE cnt >= '2';
🌺 데이터셋은 총 5개의 CSV 파일로 구성되어 있습니다.
🌺 각 테이블을 결합하여, 클러스터링을 위한 하나의 데이터셋으로 만들어주세요.
🌺 필수 사항
🌺 선택 사항
어제에 이어 추가로 merge4까지 만들었는데,
sql 환경에서는 10만행을 넘어가는 연산을 하려니 느려서 안 되는 문제가 있었다.
아쉽지만 sql은 1만 row 내외의 작은 데이터를 다룰 때만 쓰기로 하고ㅠㅜ
추가적인 EDA와 전처리는 판다스에서 마저 이어서 진행하기로 했다.
merge4를 만들기까지의 과정을 복기하면서 발견한
전처리 과정에서 생각해야 할 포인트
오늘은 여기까지만..!