728x90
์ด์ ํ์ง ๋ชปํ๋ ๋ฌธ์ ๋ฅผ ๋ง์ ํ์ดํด๋ณด๋ ค๊ณ ํฉ๋๋ค..!
https://programmers.co.kr/learn/courses/30/lessons/59413
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ์ ์๊ฐ ๊ตฌํ๊ธฐ(2)
ANIMAL_OUTS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์์ ์ ์ ๋ณด๋ธ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_OUTS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋, ์๋ฌผ
programmers.co.kr
๋ฌธ์
๋ณดํธ์์์๋ ๋ช ์์ ์ ์์ด ๊ฐ์ฅ ํ๋ฐํ๊ฒ ์ผ์ด๋๋์ง ์์๋ณด๋ ค ํฉ๋๋ค. 0์๋ถํฐ 23์๊น์ง, ๊ฐ ์๊ฐ๋๋ณ๋ก ์ ์์ด ๋ช ๊ฑด์ด๋ ๋ฐ์ํ๋์ง ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ์๊ฐ๋ ์์ผ๋ก ์ ๋ ฌํด์ผ ํฉ๋๋ค.
ํ์ด
SET @hour := -1; -- ๋ณ์ ์ ์ธ
SELECT (@hour := @hour + 1) as HOUR,
(SELECT COUNT(*) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) = @hour) as COUNT
FROM ANIMAL_OUTS
WHERE @hour < 23;
- SET : ๋ณ์๋ช ๊ณผ ์ด๊ธฐ๊ฐ์ ์ค์ ํ ์ ์์ => @๊ฐ ๋ถ์ ๋ณ์๋ ํ๋ก์์ ๊ฐ ์ข ๋ฃ๋์ด๋ ์ ์ง๋จ.
- SET @hour := -1; => @hour ๋ณ์๋ -1๋ก ์ด๊ธฐ๊ฐ ์ค์
- := ๋์ ์ฐ์ฐ์ / = ๋น๊ต์ฐ์ฐ์
- WHERE์ ์์ HOUR(DATETIME) = @hour์ผ ๋ COUNT๋ฅผ ํด๋ผ~๋ผ๊ณ ์กฐ๊ฑด์ ์ค ๊ฒ !
- @hour๋ณ์๋ -1์์ ์์ํด์ +1์ฉ ๋ํด์ง => ๊ทธ๋ฌ๋๊น WHERE์ ์๋ 0,1,2,3,,22๊น์ง ๋์ (?)๋๋ ๊ฒ
728x90
'๐ฌ MySQL > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day7 (0) | 2022.02.18 |
---|---|
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day6 (0) | 2022.02.18 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day4 (0) | 2022.02.16 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day3 (0) | 2022.02.15 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day2 (0) | 2022.02.13 |