์๋์ธ์~_~ ๋ฒ์จ LEVEL2 ๋ฌธ์ ๋ ๊ฑฐ์ ๋ค ํ์ด๊ฐ๊ณ ์๋ต๋๋ค..!
ํงํฑ

https://programmers.co.kr/learn/courses/30/lessons/59411
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ค๋ ๊ธฐ๊ฐ ๋ณดํธํ ๋๋ฌผ(2)
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์ (์ค๋๊ธฐ๊ฐ ๋ณดํธํ ๋๋ฌผ(2)) : DATEDIFF()
ANIMAL_OUTS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋, ์๋ฌผ ์ข , ์ ์์ผ, ์ด๋ฆ, ์ฑ๋ณ ๋ฐ ์ค์ฑํ ์ฌ๋ถ๋ฅผ ๋ํ๋ ๋๋ค.
ANIMAL_OUTS ํ ์ด๋ธ์ ANIMAL_ID๋ ANIMAL_INS์ ANIMAL_ID์ ์ธ๋ ํค์ ๋๋ค.
์ ์์ ๊ฐ ๋๋ฌผ ์ค, ๋ณดํธ ๊ธฐ๊ฐ์ด ๊ฐ์ฅ ๊ธธ์๋ ๋๋ฌผ ๋ ๋ง๋ฆฌ์ ์์ด๋์ ์ด๋ฆ์ ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ๋ณดํธ ๊ธฐ๊ฐ์ด ๊ธด ์์ผ๋ก ์กฐํํด์ผ ํฉ๋๋ค.
ํ์ด
SELECT INS.ANIMAL_ID, INS.NAME
FROM ANIMAL_INS INS, ANIMAL_OUTS OUTS
WHERE INS.ANIMAL_ID=OUTS.ANIMAL_ID
ORDER BY DATEDIFF(INS.DATETIME, OUTS.DATETIME)
LIMIT 2;
1) ์ธ๋ํค์ด๋ฏ๋ก ์ผ๋จ ๋ ํ ์ด๋ธ์์ ๊ฐ์ ธ์ด(?)
=> FROM ANIMAL_INS INS, ANIMAL_OUTS OUTS : ํธํ๊ฒ ์ฐ๊ธฐ์ํด์ INS, OUTS๋ก ์จ์ค
2) ๋ ํ ์ด๋ธ์ ์ฐ๊ฒฐํ๊ธฐ ์ํด ์กฐ๊ฑด๋ฌธ(WHERE)์ ๊ณตํต๋ ์ปฌ๋ผ์ ๊ธฐ์ค์ผ๋ก ์ถ๊ฐ
=> WHERE INS.ANIMAL_ID=OUTS.ANIMAL_ID
3) DATEDIFF ํจ์๋ ๋ ์ปฌ๋ผ์ ๋ ์ง ์ฐจ(?)๋ฅผ ๊ตฌํด์ฃผ๋๋ฏ..!
=> DATEDIFF(INS.DATETIME, OUTS.DATETIME)
4) ๋๊ฐ๋ง ์ถ๋ ฅํ๋ผ๊ณ ํ๊ธฐ ๋๋ฌธ์ ORDER BY ๋์
=> LIMIT 2;
https://programmers.co.kr/learn/courses/30/lessons/59414
์ฝ๋ฉํ ์คํธ ์ฐ์ต - DATETIME์์ DATE๋ก ํ ๋ณํ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์ (DATETIME์์ DATE๋ก ํ๋ณํ) : DATE_FORMAT()
ANIMAL_INS ํ ์ด๋ธ์ ๋ฑ๋ก๋ ๋ชจ๋ ๋ ์ฝ๋์ ๋ํด, ๊ฐ ๋๋ฌผ์ ์์ด๋์ ์ด๋ฆ, ๋ค์ด์จ ๋ ์ง๋ฅผ ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ์์ด๋ ์์ผ๋ก ์กฐํํด์ผ ํฉ๋๋ค.
ํ์ด
=> DATETIME ํ๋์ ๊ฐ์ ์๊ฐ(์-๋ถ-์ด)์ ์ ์ธํ ๋ ์ง(๋ -์-์ผ)๋ง ๋ณด์ฌ์ฃผ์ธ์
SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%M-%D') AS DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;
*์ค๋ฅ๊ฐ๋จ..์ ํด๊ฒฐ์ด ์๋๋์ง ๋ชจ๋ฅด๊ฒ ์(?)..๋ด์ผ ํด๊ฒฐํด์ผ์ง..
<์ค๋ฅ์ ์ด์ >
: DATE_FORMAT(DATETIME, '%Y-%m-%d')๋ก ์จ์ฃผ์ด์ผํ๋๋ฐ %Y-%M-%D๋ผ๊ณ ์จ์ฃผ์ด ์ค๋ฅ..!
'๐ฌ MySQL > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day10 (0) | 2022.02.22 |
---|---|
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day9 (0) | 2022.02.20 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day7 (0) | 2022.02.18 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day6 (0) | 2022.02.18 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day5 (0) | 2022.02.17 |