코딩테스트 연습 - 입양 시각 구하기(1) | 프로그래머스 스쿨 (programmers.co.kr)
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
DATETIME 이라는 속성들 중 입양시각만 그룹화 해서 각 입양 시각별로 COUNT를 하는 문제.
DATETIME은 'YYYY-MM-DD HH:MM:SS' 로 이루어져 있다.
[1] SUBSTR로 추출 후 CAST로 숫자 변환, CAST(X AS SIGNED)
SELECT CAST(SUBSTRING(DATETIME, 12, 2) AS SIGNED) HOUR, COUNT(*) COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR BETWEEN 9 AND 19
ORDER BY HOUR
[2] SUBSTR로 추출 후 CONVERT로 숫자 변환, CONVERT(X, SIGNED)
SELECT CONVERT(SUBSTRING(DATETIME, 12, 2), SIGNED) HOUR, COUNT(*) COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR BETWEEN 9 AND 19
ORDER BY HOUR
[3] DATE_FORMAT으로 시간만 추출 후 CONVERT로 숫자 변환, DATE_FORMAT(X, '%H')
SELECT CONVERT(DATE_FORMAT(DATETIME, '%H'), SIGNED) HOUR, COUNT(*) COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR BETWEEN 9 AND 19
ORDER BY HOUR
'SQL 이것저것' 카테고리의 다른 글
[MySQL] LIKE 를 여러 개 걸 때? 정규 표현식 REGEXP() 그리고 집합연산 (1) | 2024.10.08 |
---|---|
[MySQL] dayofweek() 함수로 요일 붙이기 (0) | 2024.10.07 |
[MySQL] SUBSTR, LEFT, RIGHT 함수 (1) | 2024.10.04 |
[MySQL] Date_format, TO_CHAR를 이용한 날짜 변환 (0) | 2024.10.04 |
[MySQL] JOIN 활용 (0) | 2024.09.06 |