1. ๊ณ ์์ด์ ๊ฐ๋ ๋ช ๋ง๋ฆฌ ์์๊น?
https://programmers.co.kr/learn/courses/30/lessons/59040
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๊ณ ์์ด์ ๊ฐ๋ ๋ช ๋ง๋ฆฌ ์์๊น
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE)
FROM ANIMAL_INS
GROUP BY ANIMAL_TYPE
ORDER BY ANIMAL_TYPE;
2. ๋๋ช ๋๋ฌผ ์ ์ฐพ๊ธฐ
https://programmers.co.kr/learn/courses/30/lessons/59041
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋๋ช ๋๋ฌผ ์ ์ฐพ๊ธฐ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
SELECT NAME, COUNT(NAME) AS 'COUNT'
FROM ANIMAL_INS
GROUP BY NAME
HAVING COUNT(NAME) > 1
ORDER BY NAME
3. ์ ์ ์๊ฐ ๊ตฌํ๊ธฐ(1)
https://programmers.co.kr/learn/courses/30/lessons/59412
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ์ ์๊ฐ ๊ตฌํ๊ธฐ(1)
ANIMAL_OUTS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์์ ์ ์ ๋ณด๋ธ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_OUTS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋, ์๋ฌผ
programmers.co.kr
SELECT HOUR(DATETIME), COUNT(HOUR(DATETIME)) AS 'COUNT'
FROM ANIMAL_OUTS
WHERE HOUR(DATETIME)>=9 AND HOUR(DATETIME)<=19
GROUP BY HOUR(DATETIME)
ORDER BY HOUR(DATETIME);
SELECT DATE_FORMAT(DATETIME, "%H") as HOUR,
COUNT(DATE_FORMAT(DATETIME, "%H")) as COUNT
FROM ANIMAL_OUTS
GROUP BY HOUR
HAVING HOUR >= 9
AND HOUR < 20
ORDER BY HOUR ASC;
4. ์ ์ ์๊ฐ ๊ตฌํ๊ธฐ(2)
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
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 @hour := -1;
# ๋ณ์์ ์ธ 0์ผ๋ก ๋ง์ถ๊ธฐ์ํด
SELECT (@hour := @hour + 1) as HOUR,
# ๋ฐ๋ณตํ๋ฉด์ ์๋ณ์์์ 0~23์ ํ ๋น
(SELECT COUNT(*) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) = @hour) as COUNT
FROM ANIMAL_OUTS
WHERE @hour < 23;
'Problem Solving > SQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] MYSQL - String, Date (0) | 2022.07.25 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] MYSQL - JOIN (0) | 2022.07.23 |
[ํ๋ก๊ทธ๋๋จธ์ค] MYSQL. IS NULL (0) | 2022.04.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] MYSQL.SUM, MAX, MIN (0) | 2022.04.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] MYSQL.SELECT (0) | 2022.04.14 |
๋๊ธ