MySQL ๋ฐ์ดํฐํ์
& ์ฐ์ฐ์ ์ฝ๊ฒ ์ ๋ฆฌ!
์ด๋ฒ ์์์ MySQL์์ ์์ฃผ ์ฐ์ด๋ ๋ฐ์ดํฐํ์
๊ณผ ์ฐ์ฐ์์ ๋ํด ์ฝ๊ณ ์์ธํ๊ฒ ์ค๋ช
ํด ์ค๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ ์ฅํ๊ณ , ์กฐ๊ฑด์ ๋ง๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์กฐํํ๋์ง ๊ถ๊ธํ ๋ถ๋ค์๊ฒ ๋ฑ ๋ง๋ ๊ฐ์์์!
๋ชฉ์ฐจ
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
๋ฐ์ดํฐํ์
๊ธฐ๋ณธ ์ดํด [00:00:20]
โข
๋ฐ์ดํฐํ์
์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ปฌ๋ผ์ ์ ์ฅํ ๋ฐ์ดํฐ ์ข
๋ฅ๋ฅผ ๋งํด์.
โข
์ฃผ์ ํ์
:
1.
INTย (์ ์ํ ์ซ์)
2.
CHARย (๊ณ ์ ๊ธธ์ด ๋ฌธ์์ด)
3.
VARCHARย (๊ฐ๋ณ ๊ธธ์ด ๋ฌธ์์ด)
4.
TEXTย (๋์ฉ๋ ๋ฌธ์์ด)
5.
TIMESTAMPย (๋ ์ง์ ์๊ฐ)
6.
BOOLEANย (์ฐธ/๊ฑฐ์ง)
7.
ENUMย (๋ฏธ๋ฆฌ ์ ํด์ง ๊ฐ ์ค ํ๋ ์ ํ)
8.
BLOBย (์ด๋ฏธ์ง, PDF ๊ฐ์ ํฐ ํ์ผ ์ ์ฅ์ฉ ๋ฐ์ดํธ ๋ฐ์ดํฐ)
์ซ์์ ๋ฌธ์ ํ์
์ฐจ์ด [00:01:04]
โข
CHAR(n): ๊ณ ์ ๊ธธ์ด ๋ฌธ์์ด, ์๋ฅผ ๋ค์ด CHAR(100)์ ๋ฌด์กฐ๊ฑด 100๋ฐ์ดํธ๋ฅผ ์ฐจ์งํด์.
โข
VARCHAR(n): ๊ฐ๋ณ ๊ธธ์ด ๋ฌธ์์ด, ์ค์ ๋ฐ์ดํฐ ํฌ๊ธฐ๋งํผ๋ง ์ ์ฅํด ๊ณต๊ฐ ํจ์จ์ !
โข
์์: "์๋
"์ CHAR(100)์ ๋ฃ์ผ๋ฉด 100๋ฐ์ดํธ, VARCHAR(100)์ ๋ฃ์ผ๋ฉด 6๋ฐ์ดํธ๋ง ์ฌ์ฉ!
โข
TEXT๋ ์์ฃผ ๊ธด ๊ธ ์ ์ฅํ ๋ ์ฌ์ฉํด์.
๋ ์ง, ๋ถ๋ฆฐ, ์ด๊ฑฐํ, ๋์ฉ๋ ๋ฐ์ดํฐ ํ์
[00:03:20]
โข
TIMESTAMP: ๋ ์ง์ ์๊ฐ์ ์ ์ฅํด์.
โข
BOOLEAN: ์ฐธ(True)๊ณผ ๊ฑฐ์ง(False)์ ์ ์ฅํ๋๋ฐ, ์ค์ ๋ก๋ 1(True), 0(False)๋ก ์ ์ฅ๋ผ์.
โข
ENUM: ์๋ฅผ ๋ค์ด ์ฑ๋ณ(๋จ์, ์ฌ์)์ฒ๋ผ ๋ฏธ๋ฆฌ ์ ํด์ง ๊ฐ๋ง ์ ์ฅ ๊ฐ๋ฅํด์.
โข
BLOB: ์ด๋ฏธ์ง๋ PDF ๊ฐ์ ํ์ผ์ ๋ฐ์ดํธ ์ฝ๋๋ก ๋ณํํด ์ ์ฅํ๋ ํ์
์ด์์.
์ฐ์ ์ฐ์ฐ์ ์ฌ์ฉ๋ฒ [00:05:46]
โข
๋ํ๊ธฐ(+), ๋นผ๊ธฐ(-), ๊ณฑํ๊ธฐ(*), ๋๋๊ธฐ(/), ๋๋จธ์ง(%) ์ฐ์ฐ ๊ฐ๋ฅ!
โข
์์: ์๊ธ์ 1000๋ฌ๋ฌ ๋ํ๊ธฐ, ์๊ธ์ 12๋ก ๋๋ ์๊ธ์ฌ ๊ณ์ฐํ๊ธฐ ๋ฑ ์ค์ต ์งํ.
๋น๊ต ์ฐ์ฐ์์ ๋
ผ๋ฆฌ ์ฐ์ฐ์ [00:06:05]
โข
๋น๊ต ์ฐ์ฐ์: = (๊ฐ๋ค), <> ๋๋ != (๋ค๋ฅด๋ค), >, <, >=, <=
โข
๋
ผ๋ฆฌ ์ฐ์ฐ์: AND (๋ ๋ค ์ฐธ), OR (๋ ์ค ํ๋๋ง ์ฐธ), NOT (๋ถ์ )
โข
์์: ์
์ฌ์ผ์ด 1990๋
์ดํ์ธ ์ง์ ์กฐํ, ๊ธ์ฌ๊ฐ 5๋ง ๋ฌ๋ฌ ์ดํ์ธ ์ง์ ์กฐํ ๋ฑ.
IN, NOT IN ํค์๋๋ก ์กฐ๊ฑด ๊ฐํธํ๊ฒ ์ฐ๊ธฐ [00:07:43]
โข
์ฌ๋ฌ ๊ฐ์ ์กฐ๊ฑด์ผ๋ก ์ธ ๋ ๋ฐ๋ณตํด์ = ์ฐ์ง ๋ง๊ณ IN ์ฌ์ฉ!
โข
์: ์ฌ์๋ฒํธ๊ฐ 1, 2, 3์ธ ์ง์ ์กฐํ โย WHERE ์ฌ์๋ฒํธ IN (1, 2, 3)
โข
NOT IN์ ๋ฐ๋๋ก ํน์ ๊ฐ ์ ์ธ ์กฐํํ ๋ ์ฌ์ฉํด์.
LIKE ํค์๋์ ์์ผ๋์นด๋ ํ์ฉ๋ฒ [00:09:01]
โข
๋ฌธ์์ด ํจํด ๊ฒ์ํ ๋ ์ฌ์ฉ!
โข
%ย : 0๊ฐ ์ด์์ ๋ฌธ์ ๋์ฒด (์: '๊น%' โ ๊น์จ๋ก ์์ํ๋ ๋ชจ๋ ์ด๋ฆ)
โข
_ย : ํ ๋ฌธ์ ๋์ฒด (์: '๊น__' โ ๊น์ผ๋ก ์์ํ๊ณ ์ด 3๊ธ์์ธ ์ด๋ฆ)
โข
NOT LIKE๋ ์กฐ๊ฑด์ ๋ง์ง ์๋ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ๋ ์ฌ์ฉ.
IS NULL๊ณผ IS NOT NULL ์กฐ๊ฑด ์กฐํ [00:10:33]
โข
NULL์ ๋ฐ์ดํฐ๊ฐ ์๋ ์ํ๋ฅผ ์๋ฏธํด์.
โข
IS NULLย : ๊ฐ์ด ์๋ ๋ฐ์ดํฐ ์กฐํ
โข
IS NOT NULLย : ๊ฐ์ด ์๋ ๋ฐ์ดํฐ ์กฐํ
โข
์์: ๋ถ์ ๋ฒํธ๊ฐ ์๋ ์ง์ ์กฐํ ๋ฑ.
UNION๊ณผ UNION ALL ์งํฉ ์ฐ์ฐ์ [00:11:17]
โข
์ฌ๋ฌ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํฉ์น ๋ ์ฌ์ฉ!
โข
UNIONย : ์ค๋ณต ์ ๊ฑฐ ํ ํฉ์น๊ธฐ
โข
UNION ALLย : ์ค๋ณต ํฌํจํด์ ํฉ์น๊ธฐ
โข
์์: ๊ธ์ฌ๊ฐ 8๋ง ์ด์์ธ ์ง์๊ณผ 1988๋
์ด์ ์
์ฌํ ์ง์ ๋ชจ๋ ์กฐํ.
์ค์ต ์์ ์ ์ฟผ๋ฆฌ ์์ฑ ํ [00:12:29]
โข
์ค์ ์ํ๋ก์ด์ฆ(์ง์) ํ
์ด๋ธ์ ํ์ฉํด ์๊ธ ๊ณ์ฐ, ์กฐ๊ฑด ์กฐํ, ํจํด ๊ฒ์ ๋ฑ ์ค์ต!
โข
๋ณ์นญ(AS) ์ฌ์ฉ๋ฒ, ์กฐ๊ฑด๋ฌธ ์์ฑ๋ฒ, ์ฌ๋ฌ ์กฐ๊ฑด ์กฐํฉ ๋ฐฉ๋ฒ ๋ฑ ์ค์ ํ ์ ๊ณต.
์ ๋ฆฌ ๋ฐ ๋ง๋ฌด๋ฆฌ [01:00:02]
โข
์ฐ์ , ๋น๊ต, ๋
ผ๋ฆฌ ์ฐ์ฐ์ ๋ชจ๋ ์ค์ตํด ๋ณด๋ฉฐ ์ดํด!
โข
IN, LIKE, IS NULL, UNION ๋ฑ ์์ฃผ ์ฐ๋ ํค์๋์ ์ฌ์ฉ๋ฒ ํ์คํ ์ตํ๊ธฐ!
โข
BETWEEN ํค์๋๋ก ๋ฒ์ ์กฐ๊ฑด ๊ฐ๋จํ๊ฒ ์ฐ๋ ๋ฒ๋ ์๊ฐ.
๋ง๋ฌด๋ฆฌ
MySQL์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ์ด๋ค ํ์
์ ์จ์ผ ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์กฐ๊ฑด์ ๋ง๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ฝ์๋ผ ๋ ์ด๋ค ์ฐ์ฐ์์ ํค์๋๋ฅผ ์จ์ผ ํ๋์ง ์ฝ๊ฒ ๋ฐฐ์ ์ด์. ํนํ LIKE์ IN ๊ฐ์ ํค์๋๋ ์์ฃผ ์ฐ์ด๋ ๊ผญ ๊ธฐ์ตํ์ธ์! ์ค์ต์ ํตํด ์ง์ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด ๋ณด๋ฉด ๋ ๋น ๋ฅด๊ฒ ์ตํ ์ ์๋ต๋๋ค. ๋ค์์๋ ์ฌ๋ฏธ์๊ณ ์ ์ตํ ๊ฐ์ ๊ธฐ๋ํด ์ฃผ์ธ์!