이번 하나은행 상반기 코테에서 SQL 두번째 문제로 초 단위의 시간계산이 필요한 문제가 나왔다.
DATEDIFF()를 활용한 날짜 계산은 익숙했지만 다른 시간 단위의 계산은 미처 생각하지 못해 당황스러웠다.
시간 유닛을 매개변수로 사용하는 뭔가가 있었던 거 같은데,,, 했으나 끝끝내 떠올리지 못했다.
시험이 끝난 후 찾아보니 TIMESTAMPDIFF(단위, 날짜1, 날짜2) 라는 함수가 있더라.
함수명이 생소한 거 보니 떠올리지 못한 게 아니라 그냥 몰랐던 듯하다. 엄,,
그래서, 초 계산 그거 어떻게 하는 건데
TIMESTAMPDIFF(단위, 날짜1, 날짜2)
단위로는 SECOND, MINUTE, HOUR, WEEK, MONTH, YEAR 등이 사용가능하고,
날짜1이 날짜2보다 이른 시점일 때 계산 결과가 양수로 도출되는 식이다.
아래 예제 코드를 남긴다.
SELECT TIMESTAMPDIFF(SECOND, '2024-03-01 00:00:00', '2024-03-01 00:00:05'); // 5
SELECT TIMESTAMPDIFF(SECOND, '2024-03-01 23:59:55', '2024-03-02 00:00:05'); // 10
'DataBase > SQL 문제풀이' 카테고리의 다른 글
[SQL] MySQL에서의 비트연산 / 프로그래머스 Front End 개발자 찾기 (0) | 2024.03.24 |
---|---|
[SQL] GROUP BY 사용 시 주의점 (1) | 2024.03.23 |
[SQL 문제풀이] 저자 별 카테고리 별 매출액 집계하기 (1) | 2023.12.20 |
[프로그래머스] SELECT / 오프라인/온라인 판매 데이터 통합하기 (0) | 2022.12.13 |
[프로그래머스] SELECT / 재구매가 일어난 상품과 회원 리스트 구하기 (0) | 2022.12.06 |