๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กSQL (15)

Soy Library

[ํ˜ผ๊ณตS] CH4-(2). ๋‘ ํ…Œ์ด๋ธ”์„ ๋ฌถ๋Š” ์กฐ์ธ

์ด์ œ๋ถ€ํ„ฐ๋Š” ๋‘ ๊ฐœ์˜ ํ…Œ์ด๋ธ”์ด ์„œ๋กœ ๊ด€๊ณ„๋˜์–ด ์žˆ๋Š” ์ƒํƒœ๋ฅผ ๊ณ ๋ คํ•ด์„œ ๋ฌถ๋Š” ๊ฒฝ์šฐ๋ฅผ ๋‹ค๋ค„๋ณธ๋‹ค. ์กฐ์ธ(join)๋ž€, ๋‘ ๊ฐœ์˜ ํ…Œ์ด๋ธ”์„ ์„œ๋กœ ๋ฌถ์–ด์„œ ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํšŒ์› ํ…Œ์ด๋ธ”์—”๋Š” ํšŒ์›์˜ ์ด๋ฆ„๊ณผ ์—ฐ๋ฝ์ฒ˜๊ฐ€ ์žˆ๊ณ , ๊ตฌ๋งค ํ…Œ์ด๋ธ”์—๋Š” ํšŒ์›์ด ๊ตฌ๋งคํ•œ ๋ฌผ๊ฑด์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์žˆ์„ ๋•Œ ์ด ๋‘ ๊ฐœ๋ฅผ ํ•จ๊ป˜ ๋ฌถ์–ด์„œ ๋ฐฐ์†ก์— ํ•„์š”ํ•œ ํ…Œ์ด๋ธ”์„ ๋งŒ๋“œ๋Š” ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค. ๋‚ด๋ถ€์กฐ์ธ ์ผ๋Œ€๋‹ค ๊ด€๊ณ„์˜ ์ดํ•ด ์ผ๋Œ€๋‹ค ๊ด€๊ณ„(one to many)๋Š” ํ•œ์ชฝ ํ…Œ์ด๋ธ”์—๋Š” ํ•˜๋‚˜์˜ ๊ฐ’๋งŒ ์กด์žฌํ•˜์ง€๋งŒ, ์—ฐ๊ฒฐ๋œ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์—๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์ด ์กด์žฌํ•˜๋Š” ๊ด€๊ณ„๋ฅผ ๋งํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, member ํ…Œ์ด๋ธ”์—์„œ ๋ธ”๋ž™ํ•‘ํฌ๋Š” 'BLK'๋กœ ํ•˜๋‚˜์˜ ๊ฐ’๋งŒ ์กด์žฌํ•˜์—ฌ PRIMARY KEY๋กœ ์ง€์ •ํ•˜์˜€์ง€๋งŒ, buy ํ…Œ์ด๋ธ”์—์„œ๋Š” BLK์˜ ๊ตฌ๋งค ๋‚ด์—ญ์€ ์—ฌ๋Ÿฌ ๊ฐ’์ด ์กด..

Study/SQL 2022. 1. 25. 12:43
[ํ˜ผ๊ณตS] CH3-(3). ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ์„ ์œ„ํ•œ SQL ๋ฌธ

SELECT๋ฌธ์€ ์ด๋ฏธ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋Š” ํ…Œ์ด๋ธ”์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜๋Š” ๊ตฌ๋ฌธ์ด๋‹ค. ์ด ์ ˆ์—์„œ๋Š” ๋ฐ์ดํ„ฐ์˜ ์ž…๋ ฅ, ์ˆ˜์ •, ์‚ญ์ œ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋ ค ํ•œ๋‹ค. ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•  ๋•Œ์—๋Š” INSERT, ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ์—๋Š” UPDATE, ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•  ๋•Œ์—๋Š” DELETE๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๋ฐ์ดํ„ฐ ์ž…๋ ฅ: INSERT INSERT๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๋ช…๋ น์ด๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ˜•์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. INSERT INTO ํ…Œ์ด๋ธ” [(์—ด1, ์—ด2, ...)] VALUES (๊ฐ’1, ๊ฐ’2, ...) ; ์œ„์˜ ๊ตฌ๋ฌธ์—์„œ ํ…Œ์ด๋ธ” ๋‹ค์Œ์— ์˜ค๋Š” ์—ด์˜ ๋ฆฌ์ŠคํŠธ๋Š” ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ VALUES ๋‹ค์Œ์— ์˜ค๋Š” ๊ฐ’์€ ํ…Œ์ด๋ธ”์˜ ์—ด ๊ฐœ์ˆ˜์™€ ๋™์ผํ•ด์•ผ ํ•œ๋‹ค. hongong1 ์ด๋ผ๋Š” ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•ด๋ณด์ž. ์•„๋ž˜์™€ ๊ฐ™์ด ์ฟผ๋ฆฌ๋ฌธ์„ ์ž‘์„ฑํ•˜๋ฉด ํ…Œ์ด๋ธ”์ด..

Study/SQL 2022. 1. 11. 22:04
[ํ˜ผ๊ณตS] CH3-(2). ์ข€ ๋” ๊นŠ๊ฒŒ ์•Œ์•„๋ณด๋Š” SELECT๋ฌธ

์ด ์ ˆ์—์„œ๋Š” SELECT ๋ฌธ์—์„œ ๊ฒฐ๊ณผ ์ •๋ ฌ์„ ์œ„ํ•œ ORDER BY, ๊ฒฐ๊ณผ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œํ•˜๋Š” LIMIT, ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•˜๋Š” DISTINCT ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์šด๋‹ค. ๋˜ํ•œ GROUP BY๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •ํ•œ ์—ด์˜ ๋ฐ์ดํ„ฐ๋“ค์„ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ผ๋ฆฌ๋Š” ๋ฌถ์–ด์„œ ๊ฒฐ๊ณผ๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. ์ฃผ๋กœ ํ•ฉ๊ณ„, ํ‰๊ท , ๊ฐœ์ˆ˜ ๋“ฑ์„ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ ์ง‘๊ณ„ํ•จ์ˆ˜์™€ ๊ฐ™์ด ์“ฐ์ด๊ณ  HAVING ์ ˆ์„ ํ†ตํ•ด ์กฐ๊ฑด์‹์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ORDER BY ์ ˆ ๋จผ์ € ๊ธฐ๋ณธ์ ์ธ SELECT ์ ˆ์˜ ํ˜•์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. SELECT ์—ด_์ด๋ฆ„ FROM ํ…Œ์ด๋ธ”_์ด๋ฆ„ WHERE ์กฐ๊ฑด์‹ GROUP BY ์—ด_์ด๋ฆ„ HAVING ์กฐ๊ฑด์‹ ORDER BY ์—ด_์ด๋ฆ„ -- ** LIMIT ์ˆซ์ž -- ** member ๋ฐ์ดํ„ฐ์—์„œ ๋ฐ๋ท”์ผ์ž๊ฐ€ ๋น ๋ฅธ ์ˆœ์œผ๋กœ mem_id, mem_n..

Study/SQL 2022. 1. 10. 18:20
[ํ˜ผ๊ณตS] CH2. ์‹ค์ „์šฉ SQL ๋ฏธ๋ฆฌ ๋ง›๋ณด๊ธฐ

๊ฑด๋ฌผ์„ ์ง“๊ธฐ ์œ„ํ•œ ์„ค๊ณ„๋„: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ๋ง ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ๋ง: ๊ฑด์ถ• ์„ค๊ณ„๋„๋ฅผ ๊ทธ๋ฆฌ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ, ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๋ฅผ ๋ฏธ๋ฆฌ ์„ค๊ณ„ํ•˜๋Š” ๊ฐœ๋…. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ๋ง์€ ์šฐ๋ฆฌ๊ฐ€ ์‚ด๊ณ ์žˆ๋Š” ์„ธ์ƒ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์‚ฌ๋ฌผ์ด๋‚˜ ์ž‘์—…์„ DBMS์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ์ฒด๋กœ ์˜ฎ๊ธฐ๊ธฐ ์œ„ํ•œ ๊ณผ์ •. ์šฐ๋ฆฌ๋Š” ํ…Œ์ด๋ธ”์ด๋ผ๋Š” ๊ฐœ์ฒด๋กœ ๋ณ€ํ™˜ํ•˜๊ฒŒ ๋จ. ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์„ฑํ•  ๋•Œ ํญํฌ์ˆ˜ ๋ชจ๋ธ(Waterfall model)์„ ์‚ฌ์šฉํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ๋ง์€ ํญํฌ์ˆ˜ ๋ชจ๋ธ์˜ ์—…๋ฌด ๋ถ„์„๊ณผ ์„ค๊ณ„ ๋‹จ๊ณ„์— ํ•ด๋‹น. * ํญํฌ์ˆ˜ ๋ชจ๋ธ ํ”„๋กœ์ ํŠธ ๊ณ„ํš ์—…๋ฌด ๋ถ„์„ ์‹œ์Šคํ…œ ์„ค๊ณ„ ํ”„๋กœ๊ทธ๋žจ ๊ตฌํ˜„ ํ…Œ์ŠคํŠธ ์œ ์ง€๋ณด์ˆ˜ ํญํฌ์ˆ˜ ๋ชจ๋ธ์˜ ๊ฐ€์žฅ ํฐ ๋‹จ์ ์€ ํญํฌ์—์„œ ๋‚ด๋ ค๊ฐ€๋Š” ๊ฑด ์‰ฌ์›Œ๋„ ๋‹ค์‹œ ๊ฑฐ์Šฌ๋Ÿฌ ์˜ฌ๋ผ๊ฐ€๋Š” ๊ฒƒ์ด ํž˜๋“ค๋‹ค๋Š” ๊ฒƒ. ํ•˜์ง€๋งŒ ๋‹จ๊ณ„๊ฐ€ ๋ช…ํ™•ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ง€๊ธˆ๋„ ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Œ. ๊ธฐ๋ณธ ํ‚ค(Primary k..

Study/SQL 2021. 12. 24. 01:16
[ํ˜ผ๊ณตS] CH1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ SQL

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(Database, DB): ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉ DBMS(Database management system): ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ MySQL Oracle SOL server MariaDB ๋“ฑ DBMS์— ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์ถ•, ๊ด€๋ฆฌํ•˜๊ณ  ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ๋˜๋Š” ์–ธ์–ด๊ฐ€ SQL(Structured Query Language)์ด๊ณ , SQL์„ ์‚ฌ์šฉํ•˜๋ฉด DBMS๋ฅผ ํ†ตํ•ด์ค‘์š”ํ•œ ์ •๋ณด๋“ค์„ ์ž…๋ ฅ, ๊ด€๋ฆฌํ•˜๊ณ  ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Œ. DBMS์˜ ๋ถ„๋ฅ˜ ๊ณ„์ธตํ˜•(Hierarchical): ํŠธ๋ฆฌ์˜ ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง. ์ฒ˜์Œ ๊ตฌ์„ฑ์„ ์™„๋ฃŒํ•œ ํ›„์— ๋ณ€๊ฒฝํ•˜๊ธฐ๊ฐ€ ๊นŒ๋‹ค๋กœ์›€. ๋‹ค๋ฅธ ๊ตฌ์„ฑ์›์„ ์ฐพ์•„๊ฐ€๋Š” ๊ฒƒ์ด ๋น„ํšจ์œจ์ . ์ง€๊ธˆ์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ˜•ํƒœ. ๋งํ˜•(Network): ํ•˜์œ„์— ์žˆ๋Š” ๊ตฌ์„ฑ์›๋ผ๋ฆฌ๋„ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋Š” ์ƒํƒœ. ํ•˜์ง€๋งŒ ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ..

Study/SQL 2021. 12. 8. 20:48