728x90

DB(Database)/Basic Concept 13

SQL UNION, UNIONALL, NOT IN, IN

UNION ๋‘ ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋ฅผ ํ–‰์œผ๋กœ ํ•ฉ์น˜๋Š” ์—ฐ์‚ฐ์ž ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ์ถœ๋ ฅ ์‹œ ์ค‘๋ณต๋œ ๊ฒƒ ์ œ์™ธ SELECT [๋ฌธ์žฅ1] UNION [ALL] SELECT [๋ฌธ์žฅ2] UNION ALL ๋‘ ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋ฅผ ํ–‰์œผ๋กœ ํ•ฉ์น˜๋Š” ์—ฐ์‚ฐ์ž UNION๊ณผ ๋‹ค๋ฅด๊ฒŒ ์ค‘๋ณต๋œ ๊ฒƒ๋„ ๋‹ค ์ถœ๋ ฅ NOT IN ์ฒซ ๋ฒˆ์งธ ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ค‘์—์„œ ๋‘ ๋ฒˆ์งธ ์ฟผ๋ฆฌ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ ์ œ์™ธํ•˜๊ณ  ์ถœ๋ ฅ SELECT * FROM [ํ…Œ์ด๋ธ”๋ช…] WHERE [์กฐ๊ฑด ์—ด] NOT IN (์„œ๋ธŒ์ฟผ๋ฆฌ) ์ฐธ๊ณ ) MySQL ๊ธฐ์ดˆ์—์„œ ์‹ค๋ฌด๊นŒ์ง€ ์™„์ „์ •๋ณต ํ•˜๊ธฐ - ์•„์ดํ‹ฐ๊ณ  ์‹ ๊ฒฝ์ง„ ๊ฐ•์‚ฌ

SQL ์กฐ์ธ, ์ผ๋Œ€๋‹ค, ๋‹ค๋Œ€๋‹ค ๊ด€๊ณ„ - Inner Join, Outer Join, Cross Join, Self Join

๋ณดํ†ต ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋Œ€์šฉ๋Ÿ‰์ด๋ผ, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ด๋ธ”๋กœ ๋ถ„๋ฆฌํ•ด์„œ ์ €์žฅํ•œ๋‹ค. → ์ค‘๋ณต๊ณผ ๊ณต๊ฐ„ ๋‚ญ๋น„ ๋ฐฉ์ง€, ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์œ„ํ•จ → ๋ถ„๋ฆฌ๋œ ํ…Œ์ด๋ธ”์€ ์„œ๋กœ ๊ด€๊ณ„(relation) ๊ฐ€์ง€๋ฏ€๋กœ join ์‹œ ์ˆ™์ง€๊ฐ€ ํ•„์š”ํ•˜๋‹ค. (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ DBMS ์ •์˜ ์ฐธ๊ณ ) ahnty0122.tistory.com/26 [DB] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ž€? DBMS๋ž€? ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ •์˜์™€ ํŠน์ง• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๋‚˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๊ณต์œ  + ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉ ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๊ณต๊ฐ„ ๊ทธ ์ž์ฒด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํŠน์ง• ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ: ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด ahnty0122.tistory.com JOIN 2๊ฐœ ์ด์ƒ์˜ ํ…Œ์ด๋ธ” ๋ฌถ์–ด์„œ ํ•˜๋‚˜์˜ ๊ฒฐ๊ณผ ํ…Œ์ด๋ธ”์„ ๋งŒ๋“œ๋Š” ๊ฒƒ Inner join ํ†ต์ƒ ์กฐ์ธ ๊ต์ง‘ํ•ฉ, ์กฐ์ธ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํ–‰๋งŒ ์ถœ๋ ฅํ•˜๋Š” ์กฐ์ธ SELECT ..

JSON ๋ฐ์ดํ„ฐ๋ž€? + MySQL ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ €์žฅ ํ˜•์‹

JSON ํ˜•์‹์ด๋ž€? JSON (JavaScript Object Notation) ์›น ํ™˜๊ฒฝ์ด๋‚˜ ๋ชจ๋ฐ”์ผ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋“ฑ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“  ๊ฐœ๋ฐฉํ˜• ํ‘œ์ค€ ํฌ๋งท ์†์„ฑ(KEY)๊ณผ ๊ฐ’(VALUE) ์Œ์œผ๋กœ ๊ตฌ์„ฑ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด์—์„œ ํŒŒ์ƒ๋˜์—ˆ์ง€๋งŒ ํŠน์ • ์–ธ์–ด์— ์ข…์†๋˜์ง€ ์•Š๊ณ  ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋…๋ฆฝ์ ์ธ ๋ฐ์ดํ„ฐ ํฌ๋งท ํฌ๋งท์ด ๋‹จ์ˆœ, ๊ณต๊ฐœ๋˜์–ด ์žˆ์–ด ๊ฑฐ์˜ ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‰ฝ๊ฒŒ ์ฝ๊ฑฐ๋‚˜ ์“ธ ์ˆ˜ ์žˆ๋„๋ก ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ€๋Šฅ โ€ป ์ตœ๊ทผ ๊ธฐ์กด ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ NoSQL๋กœ์˜ ๋ณ€ํ™”๊ฐ€ ์ด๋ฃจ์–ด์ง€๊ณ  ์žˆ๋Š”๋ฐ, ์ด๋•Œ JSON ํ˜•ํƒœ๋Š” ๋งค์šฐ ์ค‘์š” โ€ป But, ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์•Œ์•„์•ผ NoSQL ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ˆ™์ง€ ํ•„์ˆ˜ JSON_OBJECT() ์ฟผ๋ฆฌ๋ฌธ ๊ฒฐ๊ณผ๋ฅผ JSON ํ˜•ํƒœ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ํ•จ์ˆ˜ @json ๋ณ€์ˆ˜์— JSON ๋ฐ์ดํ„ฐ..

[DB] SQL์˜ ๋ถ„๋ฅ˜(DML, DDL, DCL)

SQL์˜ ๋ถ„๋ฅ˜ DML (Data Manipulation Language) DDL (Data Definition Language) DCL (Data Control Language) DML (Data Manipulation Language) ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์–ธ์–ด SELECT, INSERT, DELETE, UPDATE ๋“ฑ ํŠธ๋žœ์žญ์…˜ ๋ฐœ์ƒ-->๋กค๋ฐฑ์œผ๋กœ ์ทจ์†Œ ๊ฐ€๋Šฅ (rollback;) ํŠธ๋žœ์žญ์…˜: ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ๋ฐ”๋กœ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ  ์ž„์‹œ๋กœ ์ ์šฉ์‹œํ‚ค๋Š” ๊ฒƒ ์ปค๋ฐ‹(COMMIT): ํŠธ๋žœ์žญ์…˜์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ˜์˜ํ•˜๋Š” ๊ฒƒ ์ทจ์†Œ(ROLLBACK): ํŠธ๋žœ์žญ์…˜์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜์˜ํ•˜์ง€ ์•Š๊ณ  ์›๋ž˜ ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆฌ๋Š” ๊ฒƒ DDL (Data Definition Language) ๋ฐ์ดํ„ฐ ์ •์˜ ์–ธ์–ด CREATE, DR..

[DB] ๋ฐ์ดํ„ฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ž€?

1์žฅ. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ•„์š”์„ฑ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ •์˜์™€ ํŠน์„ฑ ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ •์˜์™€ ํŠน์ง• ๋ฐ์ดํ„ฐ์™€ ์ •๋ณด ๋ฐ์ดํ„ฐ: ํ˜„์‹ค ์„ธ๊ณ„์—์„œ ๋‹จ์ˆœํžˆ ๊ด€์ฐฐํ•˜๊ฑฐ๋‚˜ ์ธก์ •ํ•˜์—ฌ ์ˆ˜์ง‘ํ•œ ์‚ฌ์‹ค์ด๋‚˜ ๊ฐ’ ์ •๋ณด(information): ์˜์‚ฌ ๊ฒฐ์ •์— ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ๋„๋ก ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌํ•œ ๊ฒฐ๊ณผ๋ฌผ ์›์œ ์™€ ๊ฐ€๊ณต์šฐ์œ ๋กœ ๋น„์œ  ๊ฐ€๋Šฅ (์›์œ : ๋ฐ์ดํ„ฐ, ๊ฐ€๊ณต ์šฐ์œ : ์ •๋ณด) ์ •๋ณด์ฒ˜๋ฆฌ ๋ฐ์ดํ„ฐ์—์„œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๋Š” ๊ณผ์ •, ๋ฐฉ๋ฒ• ์ƒํ™ฉ์— ๋งž๊ฒŒ ํ•ด์„ํ•ด ์˜๋ฏธ ์žˆ๋Š” ๊ฒฐ๊ณผ ๋„์ถœ ์ •๋ณด ์‹œ์Šคํ…œ ์กฐ์ง ์šด์˜์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•ด ์ €์žฅํ•ด ๋‘์—ˆ๋‹ค๊ฐ€ ํ•„์š”ํ•  ๋•Œ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ๋Š” ์ˆ˜๋‹จ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๋ณด ์‹œ์Šคํ…œ ์•ˆ์—์„œ ๋ฐ์ดํ„ฐ ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ํ•„์š”ํ•  ๋•Œ ์ œ๊ณตํ•˜๋Š” ์—ญํ•  ๋‹ด๋‹น ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๋‚˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๊ณต์œ ํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ†ตํ•ฉ..

728x90