개인공부/SQL

[SQL]리트코드 197. Rising Temperature 문제 풀이

k솔이 2023. 4. 23. 14:33

Weather 테이블 한개를 가지고 어제와 오늘의 온도가 상승한 것들의 Id 값을 뽑아내면 된다.

조금 헷갈리긴 하지만 테이블 형태를 보면서 풀면 어렵지 않다.

SELF JOIN을 활용해 yesterday 테이블을 만들었고, recordDate에서 1일을 더해 주었을때의 테이블은 아래와 같다.

어제 보다 오늘의 온도가 높은 것들만 구해야하니까 아래와 같이 조건을 넣어주면 된다.

SELECT today.id AS Id
FROM Weather AS today
	 INNER JOIN Weather AS yesterday ON DATE_ADD(yesterday.recordDate, INTERVAL 1 DAY) = today.recordDate
WHERE today.temperature > yesterday.temperature

 

끝.