-
카테고리
-
세부 분야
데이터 분석
-
해결 여부
미해결
rising temperature
22.08.20 03:39 작성 조회수 195
0
날짜 계산할 때 -1, +1 같은건 절대 안된다고 하셨는데
실제로 이렇게 써도 제출 전에는 맞다고 나오는데요!
혹시 이건 왜그럴까요?
select today.id
from weather as today
inner join weather as yesterday on today.recorddate - 1 =. yesterday.recorddate
where today.temperature > yesterday.temperature
from weather as today
inner join weather as yesterday on today.recorddate - 1 =. yesterday.recorddate
where today.temperature > yesterday.temperature
답변을 작성해보세요.
1
지식공유자 J
지식공유자2022.09.05
위에 첨부한 스크린샷의 output 첫 번째 row를 보시면
2015-01-01의 하루 전 날짜는 2014-12-31인데, recorddate - 1 로 연산했을 경우 20150100으로 출력되는 것을 알 수 있습니다.
문제에서 주어진 데이터로 풀 때는 정답에 이런 값이 들어가지 않으므로 Run Code 했을 때 문제가 없었을 텐데요.
제출 후 채점을 할 때는 시스템이 이 쿼리를 여러 개의 test case에 대입해 보고 모든 케이스를 통과해야만 정답으로 처리를 합니다.
연도(year), 월(month)의 첫 날 또는 마지막 날의 날짜가 포함된 케이스가 있을 것이고, -1과 +1로 연산하면 이런 경우에 오답 처리가 됩니다.
답변 1