728x90
https://programmers.co.kr/learn/courses/30/lessons/59412
09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 시간대 순으로 조회하는 SQL 문
MySQL
SELECT HOUR( DATETIME ) HOUR, COUNT(*) COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR BETWEEN 9 AND 19
ORDER BY HOUR;
Oracle DB
SELECT HOUR, COUNT( * ) COUNT
FROM (
SELECT TO_NUMBER( TO_CHAR( DATETIME, 'HH24' ) ) AS HOUR
-- SELECT EXTRACT( HOUR FROM CAST( DATETIME AS TIMESTAMP ) ) AS HOUR
FROM ANIMAL_OUTS
)
-- WHERE HOUR BETWEEN 9 AND 19
GROUP BY HOUR
HAVING HOUR BETWEEN 9 AND 19
ORDER BY HOUR;
※ TO_NUMBER( ) -- 입력받은 데이터( 문자열 )를 숫자로 변환
※ TO_CHAR( ) -- 입력받은 데이터( 숫자 / 날짜 )를 문자로 변환
※ EXTRACT( ) -- 날짜 타입( DATE, TIMESTAMP )의 데이터에서 특정 부분 추출
더보기
EXTRACT ( { { YEAR | MONTH | DAY | HOUR | MINUTE | SECOND } | { TIMEZONE_HOUR|MINUTE|REGION|ABGBR } }
FROM { datetime_val_expr | interval_val_expr } )
( https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions050.htm )
※ CAST( ) -- 형 변환
더보기
CAST ( expr AS type_name )
( https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions016.htm )
반응형
'코딩 문제 풀기 ( Algorithm problem solving ) > 프로그래머스 ( Programmers )' 카테고리의 다른 글
[프로그래머스(Programmers)][SQL] JOIN (Lv3) 있었는데요 없었습니다 (0) | 2022.01.09 |
---|---|
[프로그래머스(Programmers)][SQL] GROUP BY (Lv4) 입양 시각 구하기 (2) (0) | 2022.01.09 |
[프로그래머스(Programmers)][SQL] GROUP BY (Lv2) 동명 동물 수 찾기 (0) | 2022.01.07 |
[프로그래머스(Programmers)][SQL] GROUP BY (Lv2) 고양이와 개는 몇 마리 있을까 (0) | 2022.01.07 |
[프로그래머스(Programmers)][SQL] String, Date (Lv3) 오랜 기간 보호한 동물 (2) (0) | 2022.01.07 |