Q. 어제보다 기온이 더 높은 id를 가져오시오.
Input:
Weather table:
+----+------------+-------------+
| id | recordDate | temperature |
+----+------------+-------------+
| 1 | 2015-01-01 | 10 |
| 2 | 2015-01-02 | 25 |
| 3 | 2015-01-03 | 20 |
| 4 | 2015-01-04 | 30 |
+----+------------+-------------+
Output:
+----+
| id |
+----+
| 2 |
| 4 |
+----+
datediff 함수로 각자 다른 컬럼에서의 시간차는 구해봤지만,
한 컬럼에 있는 데이터들을 어떻게 분리하지? 에서 잠깐 막혔었다.
그러다 self join을 해서 recordDate를 두개를 만들어 놓고 비교하는게 생각났다.
위 1,2를 and로 묶으니 정답이었다.
select a.id
from weather a, weather b
where datediff(a.recorddate, b.recorddate) = 1 and a.temperature > b.temperature
오늘은 개인과제 csv 파일 옮기다 오전 시간이 다 갔다.
디비버에서 안먹혀서, workbench로 import를 해서 문제를 풀고
ERD를 대충 그려보고,,,
그래도 뭔가 디비버가 더 편한것 같아서 디비버로 다시 돌아갔다.
처음에는 디비버에 csv 파일 넣는 방법을 몰라서 헤맸는데, 알고보니 나는 mysql 로컬 서버를 이미 가지고 있어서 서버 비밀번호만 입력했으면 자동으로 연동되는 거였다.. ㄱ-
이렇게 또 새로운걸 알아간다... 🥹