๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค 4

๐Ÿชช [์ž๊ฒฉ์ฆ] [SQLD] 2024๋…„ ์ œ 54ํšŒ SQLD ๊ฐœ๋ฐœ์ž ์‹œํ—˜ ํ›„๊ธฐ

์‹œํ—˜ ํ›„๊ธฐ2024๋…„ 8์›” 24์ผ SQLD ์‹œํ—˜์„ ๋ณด๊ณ ์™”๋‹ค. ์ „๊ณต์ž์— ๋‚œ์ด๋„๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ์–ด๋ ต์ง€ ์•Š๋‹ค๊ณ  ํ•ด์„œ ๊ทธ๋ƒฅ ํ•œ๋ฒˆ ๋ณด์ž๋Š” ์‹์œผ๋กœ ์‹œํ—˜์„ ๋ดค๋‹ค. ์ค€๋น„ ๊ธฐ๊ฐ„๋„ ์—†์ด ๊ทธ๋ƒฅ ์ „๋‚  3-4์‹œ๊ฐ„์ •๋„ ๋…ธ๋žญ์ด ํ’€์–ด๋ณด๊ณ  ์ƒ๊ฐ๋ณด๋‹ค ๋‚œ์ด๋„๊ฐ€ ์–ด๋ ค์›Œ์„œ ๊ทธ๋ƒฅ ๋ณด๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทผ๋ฐ ์•Œ๊ณ ๋ณด๋‹ˆ ๋…ธ๋žญ์ด๋Š” SQLP ๋ฌธ์ œ๊นŒ์ง€ ์žˆ์–ด์„œ ๋” ์–ด๋ ค์šด ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‚˜๋ณด๋‹ค.  SQLD ์‹œํ—˜์„ ๋ณด๋ฉด์„œ ๋Š๋‚€๊ฑด ํ™•์‹คํžˆ ์‹ค๋ฌด ๊ฒฝํ—˜์ด ์žˆ์œผ๋ฉด SQL์„ ๋งŽ์ด ๋‹ค๋ฃจ๋‹ค ๋ณด๋‹ˆ ์ฟผ๋ฆฌ๋ฅผ ์งœ๊ธฐ์— ์ต์ˆ™ํ•˜๊ณ  ๊ธฐ๋ณธ ๊ฐœ๋…๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ์ „๊ณต์ž๋ผ ํฐ ์–ด๋ ค์›€์€ ์—†์—ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ Oracle๊ณผ SQL-server์˜ ์ฐจ์ด์— ๋Œ€ํ•ด ์ž˜ ๋ชฐ๋ผ์„œ ๋ช‡๋ฌธ์ œ๊ฐ€ ํ—ท๊ฐˆ๋ ธ๊ณ  NULL ์ฒ˜๋ฆฌ์— ๋Œ€ํ•ด ์ต์ˆ™ํ•˜๋‹ค๋ฉด ํฐ ์ค€๋น„ ์—†์ด ํ•ฉ๊ฒฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‚œ์ด๋„์˜€๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์‹ค ์œˆ๋„์šฐ ํ•จ์ˆ˜๋„ ์‹ค๋ฌด์—์„œ ๋งŽ์ด ์“ฐ์ง€ ์•Š์•˜๊ณ  ..

๐Ÿ“š [CS๋ฉด์ ‘] ์›น ๋ฉด์ ‘ ์งˆ๋ฌธ [13] [ Database ]

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด(DDL, DML, DCL)์— ๋Œ€ํ•ด ์„ค๋ช… - DDL (์ •์˜์–ด : Data Definition Language) : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ๋ฅผ ์ •์˜, ์ˆ˜์ •, ์‚ญ์ œํ•˜๋Š” ์–ธ์–ด ( alter, create, drop ) - DML (์กฐ์ž‘์–ด : Data Manipulation Language) : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚ด์˜ ์ž๋ฃŒ ๊ฒ€์ƒ‰, ์‚ฝ์ž…, ๊ฐฑ์‹ , ์‚ญ์ œ๋ฅผ ์œ„ํ•œ ์–ธ์–ด ( select, insert, update, delete ) - DCL (์ œ์–ด์–ด : Data Control Language) : ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€, ๋ณ‘ํ–‰ ์ˆ˜ํ–‰ ์ œ์–ด, ๋ณดํ˜ธ์™€ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ์–ธ์–ด ( commit, rollback, grant, revoke ) 2. SELECT ์ฟผ๋ฆฌ์˜ ์ˆ˜ํ–‰ ์ˆœ์„œ 1. FROM - ๊ฐ ํ…Œ์ด๋ธ”์„ ํ™•์ธํ•œ๋‹ค. 2...

๐Ÿ“š [CS๋ฉด์ ‘] ์›น ๋ฉด์ ‘ ์งˆ๋ฌธ [6] [Data Base]

1. ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์˜ ํŠน์ง• ? 1. ์‹ค์‹œ๊ฐ„ ์ ‘๊ทผ์„ฑ (Real-Time Accessibility) - ๋น„์ •ํ˜•์ ์ธ ์งˆ์˜์— ๋Œ€ํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ์— ์˜ํ•œ ์‘๋‹ต์ด ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ 2. ์ง€์†์ ์ธ ๋ณ€ํ™” (Continuous Evolution) - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ƒํƒœ๋Š” ๋™์ . ์ฆ‰, ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…(Insert), ์‚ญ์ œ(Delete), ๊ฐฑ์‹ (Update)์œผ๋กœ ํ•ญ์ƒ ์ตœ์‹ ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•จ 3. ๋™์‹œ ๊ณต์šฉ (Concurrent Sharing) - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๋ชฉ์ ์„ ๊ฐ€์ง„ ์—ฌ๋Ÿฌ ์‘์šฉ์ž๋“ค์„ ์œ„ํ•œ ๊ฒƒ์ด๋ฏ€๋กœ ๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ๊ฐ™์€ ๋‚ด์šฉ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ 4. ๋‚ด์šฉ์— ์˜ํ•œ ์ฐธ์กฐ (Content Reference) - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฐธ์กฐํ•  ๋•Œ ๋ฐ์ดํ„ฐ ๋ ˆ์ฝ”๋“œ์˜ ์ฃผ์†Œ๋‚˜ ์œ„์น˜์— ์˜ํ•ด์„œ๊ฐ€ ..

๐Ÿ“Š [DataBase] Oracle Rownum ์‚ฌ์šฉํ•˜๊ธฐ

๐Ÿšฉ Oracle์—์„œ Rownum ์‚ฌ์šฉํ•˜๊ธฐ Oracle์€ limit๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค(11g ๊นŒ์ง€๋Š” ์ง€์›ํ•˜์ง€ ์•Š๊ณ  12๋ถ€ํ„ฐ๋Š” ์ง€์›ํ•œ๋‹ค). ๋”ฐ๋ผ์„œ limit ๋Œ€์‹  ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์›ํ•˜๋Š” ํ–‰์„ ๊ฐ€์ ธ์™€์•ผ ํ•˜๋Š”๋ฐ ๋ฐ”๋กœ rownum์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์˜ˆ์‹œ๋ฅผ ๋“ค๊ธฐ ์œ„ํ•ด oracle์˜ hr ์Šคํ‚ค๋งˆ์— ์žˆ๋Š” ๊ธฐ๋ณธ ํ…Œ์ด๋ธ”์„ ๊ฐ€์ง€๊ณ  SQL์„ ์‹คํ–‰ํ•ด ๋ณผ ๊ฒƒ์ด๋‹ค. MySQL SELECT * FROM EMPLOYEES LIMIT 10; SELECT * FROM EMPLOYEES LIMIT 0, 10; SELECT * FROM EMPLOYEES LIMIT 0 OFFSET 10; MySQL์€ ๊ทธ๋ƒฅ Limit ์•ˆ์— ์›ํ•˜๋Š” ํ–‰์„ ๋„ฃ์œผ๋ฉด ๋œ๋‹ค. Oracle SELECT * FROM ( SELECT ROWNUM AS rn, employee_..