2022. 9. 26. 08:31ใ์ฝ๋ฉํ ์คํธ ์ฐ์ต/ํ๋ก๊ทธ๋๋จธ์ค_2022
๋ฌธ์ ์ค๋ช
ANIMAL_OUTS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์์ ์ ์ ๋ณด๋ธ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_OUTS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋, ์๋ฌผ ์ข , ์ ์์ผ, ์ด๋ฆ, ์ฑ๋ณ ๋ฐ ์ค์ฑํ ์ฌ๋ถ๋ฅผ ๋ํ๋ ๋๋ค.
NAME TYPE NULLABLE
ANIMAL_ID | VARCHAR(N) | FALSE |
ANIMAL_TYPE | VARCHAR(N) | FALSE |
DATETIME | DATETIME | FALSE |
NAME | VARCHAR(N) | TRUE |
SEX_UPON_OUTCOME | VARCHAR(N) | FALSE |
๋ณดํธ์์์๋ ๋ช ์์ ์ ์์ด ๊ฐ์ฅ ํ๋ฐํ๊ฒ ์ผ์ด๋๋์ง ์์๋ณด๋ ค ํฉ๋๋ค. 09:00๋ถํฐ 19:59๊น์ง, ๊ฐ ์๊ฐ๋๋ณ๋ก ์ ์์ด ๋ช ๊ฑด์ด๋ ๋ฐ์ํ๋์ง ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ์๊ฐ๋ ์์ผ๋ก ์ ๋ ฌํด์ผ ํฉ๋๋ค.
์์
SQL๋ฌธ์ ์คํํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋์์ผ ํฉ๋๋ค.
HOUR COUNT9 | 1 |
10 | 2 |
11 | 13 |
12 | 10 |
13 | 14 |
14 | 9 |
15 | 7 |
16 | 10 |
17 | 12 |
18 | 16 |
19 | 2 |
๋์ ํ์ด [MySQL]
SELECT DATE_FORMAT(DATETIME, '%H') AS HOUR, COUNT(*) AS COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR >= 9 AND HOUR < 20
ORDER BY HOUR
๋ณดํธ์์์ ๊ฐ ์๊ฐ๋๋ณ๋ก ์ ์๋๋ ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค.
๊ทธ๋ฌ๋ฏ๋ก ์๊ฐ๋๋ณ๋ก ๊ทธ๋ฃนํ๋ฅผ ํด์ค์ผ ํ๋๋ฐ ์ผ๋จ ์๊ฐ๋๋ณ๋ก ๊ทธ๋ฃนํํ๊ธฐ ์ํด HOUR๋ฅผ DATE_FORMAT ํจ์๋ฅผ ์ฌ์ฉํด์ ์๊ฐ๋ง ๋์ฌ ์ ์๊ฒ ๋ณํํด์ฃผ๊ณ , ๊ทธ ๋ค์ GROUP BY๋ฅผ HOUR์ ๋ง์ถฐ์ ํ๋๋ฐ 9์ ~ 19:59๋ก ์กฐ๊ฑด์ ๊ฑธ์ด์ฃผ๊ธฐ ์ํด์ HAVING ์กฐ๊ฑด์ ์ฌ์ฉํด์ฃผ๊ณ HOUR๋ก ์ ๋ ฌํด์คฌ๋๋ ์ํ๋ ๊ฐ์ ์ป์ ์ ์์๋ค.