안녕하십니까
MySQL 8.0 사용하고 있는 신입 입니다.
지하철 역(STATION) 소요시간을 계산하려고 합니다.
SUBWAY 스키마, sub5_table 테이블 입니다.
상행하는 경우
from A(5:00:00 <- START_TIME)
to B(5:10:00 <- END_TIME)
아래의경우 B-A를 해서 00:10:00 이렇게 결과가 나타납니다.
sql = " SELECT " \
" TYPE, " \
" TIMEDIFF(END_TIME, (SELECT START_TIME FROM sub5_table WHERE STATION = %s " \
" AND START_TIME IS NOT NULL LIMIT 1)) AS SUBWAY " \
" FROM sub5_table " \
" WHERE STATION = %s " \
" LIMIT 1 " \
하지만 반대의 경우
하행하는경우
from B(5:10:00 <- START_TIME)
to A(5:00:00 <- END_TIME)
으로 하게되면 결과값이 이상하게 나옵니다...
쿼리를 어떻게 수정해야할까요? 아니면 어떤것을 추가하면 될까요?
개발 시작한지 얼마되지 않아 너무 어렵습니다 도움을 주시면 감사하겠습니다.
이상하게 나온다는게 어떻게 나오는건지요?
-00:10:00 으로 나오지 않나요?
위 값이 아니라면 원본 값을 다시 한번 체크해보세요.
https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_timediff
SELECT TIMEDIFF(‘2020-04-23 05:00:00’, ‘2020-04-23 05:10:00’);