#4 Data Manipulation Language

#4.0 Introduction

DML Data Manipulation Language

๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์–ธ์–ด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€(์‚ฝ์ž…), ์‚ญ์ œ, ์ˆ˜์ •(์—…๋ฐ์ดํŠธ) ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด

Update / Query ๋กœ ์ข…๋ฅ˜๊ฐ€ ๋‚˜๋‰จ

#4.1 Update Commands

Update ๋ช…๋ น

  • INSERT INTO

  • UPDATE

  • DELETE

UPDATE movies SET rating = 10; -- ๋ชจ๋“  rating ๊ฐ’์ด 10์œผ๋กœ ๋ณ€๊ฒฝ๋จ

DELETE movies; -- ๋ชจ๋“  movies ๋ฅผ ์‚ญ์ œํ•จ

-- WHERE ๋ฅผ ์‚ฌ์šฉํ•ด ์œ„์น˜๋ฅผ ์ขํž˜ & AND ๋“ฑ ๋‹ค์–‘ํ•œ ์กฐ๊ฑด์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ

UPDATE movies SET rating = 10 WHERE title = 'The Lord of The Rings';
UPDATE movies SET rating = rating + 2 WHERE title = 'The Lord of The Rings';
-- ใ„ด์—…๋ฐ์ดํŠธํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ์Œ

DELETE movies WHERE movie_id = 2;

#4.2 SELECT Command

SELECT - Table์„ ๊ฒฐ๊ณผ๋ฌผ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ช…๋ น

#4.3 FROM Clause

FROM table์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คŒ

#4.4 SELECT Expressions

#4.5 Movies Database

#4.6 WHERE Clause

WHERE ์„ ํƒ๋  ๋ฐ์ดํ„ฐ ์ขํžˆ๊ธฐ

  • NULL ๊ฐ’ ํ™•์ธ์€ IS NULL

  • AND _ ๋ชจ๋“  ์กฐ๊ฑด์ด ์ฐธ์ด์–ด์•ผ ํ•จ

  • OR _ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋ผ๋„ ์ฐธ์ดํฌํ•จ

#4.7 WHERE Predicates

ํŒจํ„ด ๋งค์นญ

#4.8 SELECT Case

ํŠน์ • ๊ธฐ์ค€๊ณผ ์กฐ๊ฑด์— ๋งž์ถ˜ ์ปฌ๋Ÿผ ์ƒ์„ฑ

CASE ํ‘œํ˜„์‹์€ ์กฐ๊ฑด ๋ชฉ๋ก์„ ํ‰๊ฐ€ํ•˜๊ณ  ํ‰๊ฐ€ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ํ‘œํ˜„์‹์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

#4.9 ORDER BY Clause

ํ•˜๋‚˜ ์ด์ƒ์˜ ์—ด์„ ๊ธฐ์ค€์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ๋˜๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ

ASC | DESC

๋‘˜ ์ด์ƒ์˜ ์—ด์„ ์ •๋ ฌํ•  ๋•Œ๋Š” ์ฒซ ๋ฒˆ์งธ ์กฐ๊ฑด์œผ๋กœ ์ •๋ ฌ ํ›„ ๋‚˜์ค‘ ์กฐ๊ฑด ์ •๋ ฌ

#4.10 LIMIT and OFFSET Clauses

์ฟผ๋ฆฌ ์ œํ•œํ•ด์•ผ ํ•˜๋Š” ์ด์œ : ์„ฑ๋Šฅ์ ์œผ๋กœ์ง๋ฉดํ•˜๋Š” ํ•œ๊ณ„๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ex_ ๋ฐฑ๋งŒ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ณด์—ฌ์ค„ ๊ฒƒ์ธ๊ฐ€?

#4.11 GROUP BY Clause

GROUP BY - ์ฆ‰๊ฐ์ ์œผ๋กœ ๋ถ„๋ช…ํžˆ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š” ์ธ์‚ฌ์ดํŠธ ์ถ”์ถœ ๊ฐ€๋Šฅ

ใ„ด ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋ฃน์œผ๋กœ ๋ณ‘ํ•ฉ

์ง‘๊ณ„ ํ•จ์ˆ˜ - SUM / AVG ๋“ฑ ์—ฌ๋Ÿฌ row ๊ฐ’์„ ์ง‘๊ณ„

4.12 GROUP BY Gothas

  • SQLite

  • ์ง‘๊ณ„ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋ณ‘ํ•ฉ๋œ๋‹ค.

  • GROUP BY ํ•˜์ง€ ์•Š์€ column์„ SELECT ํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ’์€ ์–ป์ง€๋งŒ ๊ฐ ๊ทธ๋ฃน์˜ ๋งˆ์ง€๋ง‰ ํ–‰์„ ๊ฐ€์ ธ์˜จ๋‹ค.

  • GROUP BY๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ๊ทธ๋ฃน ์ž์ฒด๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ „์ฒด๊ฐ€ ๊ทธ๋ฃน์ด ๋œ๋‹ค.

#4.13 HAVING Clause

HAVING - WHERE์™€ ๋น„์Šทํ•˜๊ฒŒ row๋ฅผ ํ•„ํ„ฐ๋งํ•˜๋Š” ๊ธฐ๋Šฅ, ์‹คํ–‰ํ•˜๋Š” ์ˆœ๊ฐ„์ด ๋‹ค๋ฆ„

ใ„ด WHERE ๋‹ค์Œ, GROUP BY ๋‹ค์Œ์— ์‹คํ–‰๋จ

ใ„ด GROUP BY์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ

#4.14 Super Practice Part 1

https://www.sqlite.org/lang_aggfunc.html ใ„ด SQLite ์ง‘๊ณ„ํ•จ์ˆ˜ ํ™•์ธ

#4.15 Super Practice Part 2

#4.16 Super Practice Part 3

#4.17 Views

View https://www.tutorialspoint.com/sqlite/sqlite_views.htm

Last updated

Was this helpful?