๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
DBMS/Mariadb

[DBMS]MariaDB SQL์„ ์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ ˆ์ฝ”๋“œ ๊ด€๋ฆฌ: ์‚ฝ์ž…, ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ

by YJ Dev 2024. 5. 21.
728x90
๋ฐ˜์‘ํ˜•
SMALL

MariaDB์—์„œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๊ธฐ์ดˆ์ ์ธ SQL ์ฟผ๋ฆฌ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ์˜ ์‚ฝ์ž…, ์‚ญ์ œ, ์ˆ˜์ •, ์กฐํšŒ ๊ธฐ๋Šฅ์„ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

mariadb ๋ ˆ์ฝ”๋“œ ๊ด€๋ฆฌ

๋ ˆ์ฝ”๋“œ ์‚ฝ์ž…(INSERT)๐Ÿ’Œ

๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ์ƒˆ๋กœ์šด ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด SQL์˜ INSERT INTO ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

INSERT INTO ๊ตฌ๋ฌธ

INSERT INTO ๊ตฌ๋ฌธ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ์ƒˆ๋กœ์šด ๋ ˆ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INSERT INTO ํ…Œ์ด๋ธ”๋ช… (์—ด1, ์—ด2, ...)
VALUES (๊ฐ’1, ๊ฐ’2, ...);
  • ํ…Œ์ด๋ธ”๋ช…: ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•  ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
  • (์—ด1, ์—ด2, ...): ์‚ฝ์ž…ํ•  ์—ด(ํ•„๋“œ)์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ชจ๋“  ์—ด์— ๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋ ค๋ฉด ์ด ๋ถ€๋ถ„์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • VALUES (๊ฐ’1, ๊ฐ’2, ...): ๊ฐ ์—ด์— ๋Œ€์‘ํ•˜๋Š” ๊ฐ’์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์—ด๊ณผ ๊ฐ’์€ ์ˆœ์„œ๋Œ€๋กœ ๋งค์นญ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

INSERT INTO ์˜ˆ์‹œ

โ–ถ users๋ผ๋Š” ํ…Œ์ด๋ธ”์— ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์‚ฝ์ž…ํ•˜๋ ค๊ณ  ํ•œ๋‹ค๋ฉด?

INSERT INTO users (name, age, email)
VALUES ('John Doe', 30, 'john@example.com');

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์˜ name, age, email ์—ด์— ๊ฐ๊ฐ 'John Doe', 30, 'john@example.com' ๊ฐ’์„ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.

INSERT INTO ์‚ฌ์šฉ ์‹œ ์ฃผ์˜ํ•  ์ 

  • ์—ด์˜ ์ˆœ์„œ์™€ ๊ฐ’์˜ ์ˆœ์„œ๋ฅผ ์ผ์น˜์‹œ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค..
  • ๊ฐ’์˜ ํ˜•์‹์€ ํ•ด๋‹น ์—ด์˜ ๋ฐ์ดํ„ฐ ์œ ํ˜•๊ณผ ์ผ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆซ์ž ์—ด์— ๋ฌธ์ž์—ด ๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค..
  • ๋ชจ๋“  ํ•„์ˆ˜ ์—ด์— ๊ฐ’์„ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ์—ด์— ๋Œ€ํ•œ ๊ฐ’์ด ์—†์œผ๋ฉด NULL ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฝ์ž… ์‹œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜์™€ ํ•ด๊ฒฐ์ฑ…

๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์‚ฝ์ž… ์˜ค๋ฅ˜ ์ค‘ ํ•˜๋‚˜๋Š” ์ค‘๋ณต๋œ ๊ธฐ๋ณธ ํ‚ค(primary key) ๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์˜ค๋ฅ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๊ฒฐ์ฑ…์œผ๋กœ๋Š” ๊ธฐ๋ณธ ํ‚ค๊ฐ€ ๊ณ ์œ ํ•˜๋„๋ก ๊ฐ’์„ ์„ค์ •ํ•˜๊ฑฐ๋‚˜, ์‚ฝ์ž… ์ „์— ๊ธฐ์กด ๋ ˆ์ฝ”๋“œ์™€ ์ถฉ๋Œํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋“ฑ์˜ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ์œ ํ˜•์˜ ์˜ค๋ฅ˜๋Š” ํ…Œ์ด๋ธ”์˜ ์ œ์•ฝ ์กฐ๊ฑด์— ์œ„๋ฐฐ๋  ๋•Œ์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” ํ•ด๋‹น ์ œ์•ฝ ์กฐ๊ฑด์„ ํ™•์ธํ•˜๊ณ  ์‚ฝ์ž… ์ž‘์—…์„ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ์ฝ”๋“œ ์ˆ˜์ •(UPDATE)๐Ÿ’–

๋ ˆ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด SQL์˜ UPDATE ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

UPDATE ๊ตฌ๋ฌธ

UPDATE ๊ตฌ๋ฌธ์€ ํ…Œ์ด๋ธ”์˜ ํŠน์ • ๋ ˆ์ฝ”๋“œ์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

UPDATE ํ…Œ์ด๋ธ”๋ช…
SET ์—ด1 = ๊ฐ’1, ์—ด2 = ๊ฐ’2, ...
WHERE ์กฐ๊ฑด;
  • ํ…Œ์ด๋ธ”๋ช…: ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•  ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
  • SET ์—ด1 = ๊ฐ’1, ์—ด2 = ๊ฐ’2, ...: ์ˆ˜์ •ํ•  ์—ด๊ณผ ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • WHERE ์กฐ๊ฑด: ์ˆ˜์ •ํ•  ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๋Š” ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค. ์ด ์กฐ๊ฑด์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค.

UPDATE ์˜ˆ์‹œ

โ–ถ users ํ…Œ์ด๋ธ”์—์„œ id๊ฐ€ 1์ธ ์‚ฌ์šฉ์ž์˜ ๋‚˜์ด์™€ ์ด๋ฉ”์ผ์„ ์ˆ˜์ •ํ•˜๋ ค๊ณ  ํ•œ๋‹ค๋ฉด?

UPDATE users
SET age = 31, email = 'newemail@example.com'
WHERE id = 1;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ id๊ฐ€ 1์ธ ๋ ˆ์ฝ”๋“œ์˜ age๋ฅผ 31๋กœ, email์„ 'newemail@example.com'์œผ๋กœ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

UPDATE ์‚ฌ์šฉ ์‹œ ์ฃผ์˜ํ•  ์ 

  • ์—ด์˜ WHERE์กฐ๊ฑด์„ ์ •ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ˆ˜์ •๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • SET์ ˆ์— ์—ฌ๋Ÿฌ ์—ด์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‰ผํ‘œ(,)๋กœ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.
  • WHERE ์กฐ๊ฑด์ด ์—†์œผ๋ฉด ๊ฒฝ๊ณ  ์—†์ด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ•ญ์ƒ ์กฐ๊ฑด์„ ๋ช…ํ™•ํžˆ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ˆ˜์ • ์‹œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜์™€ ํ•ด๊ฒฐ์ฑ…

  • ๋ฐ์ดํ„ฐ ํ˜•์‹ ์˜ค๋ฅ˜: ์ˆ˜์ •ํ•  ๊ฐ’์˜ ๋ฐ์ดํ„ฐ ํ˜•์‹์ด ํ•ด๋‹น ์—ด์˜ ๋ฐ์ดํ„ฐ ํ˜•์‹๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆซ์ž ํ˜•์‹์˜ ์—ด์— ๋ฌธ์ž์—ด์„ ํ• ๋‹นํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๋ฐ์ดํ„ฐ ํ˜•์‹์„ ๋งž์ถ”์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ œ์•ฝ ์กฐ๊ฑด ์œ„๋ฐ˜: ์—ด์— ์„ค์ •๋œ ์ œ์•ฝ ์กฐ๊ฑด์„ ์œ„๋ฐ˜ํ•˜๋Š” ๊ฐ’์„ ์ˆ˜์ •ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์œ ๋‹ˆํฌ ์ œ์•ฝ ์กฐ๊ฑด์ด ์„ค์ •๋œ ์—ด์— ์ค‘๋ณต๋œ ๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋ ค๊ณ  ํ•  ๋•Œ์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” ์œ ํšจํ•œ ๊ฐ’์„ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์—์„œ ๋งค์šฐ ์ค‘์š”ํ•œ ์ž‘์—…์ž…๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ WHERE ์กฐ๊ฑด๊ณผ ์˜ฌ๋ฐ”๋ฅธ SET ์ ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ณ  ์ •ํ™•ํ•˜๊ฒŒ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ ˆ์ฝ”๋“œ ์กฐํšŒ(SELECT)๐Ÿ’ž

๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐํšŒํ•˜๋Š” ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์—์„œ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฐ€์ ธ์˜ค๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด SQL์˜ SELECT ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

SELECT ๊ตฌ๋ฌธ

SELECT ๊ตฌ๋ฌธ์€ ํ…Œ์ด๋ธ”์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

SELECT ์—ด1, ์—ด2, ...
FROM ํ…Œ์ด๋ธ”๋ช…
WHERE ์กฐ๊ฑด
ORDER BY ์—ด1 ASC|DESC
LIMIT ์ˆซ์ž;
  • ์—ด1, ์—ด2, ...: ์กฐํšŒํ•  ์—ด(ํ•„๋“œ)์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์—ด์„ ์กฐํšŒํ•˜๋ ค๋ฉด *๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ…Œ์ด๋ธ”๋ช…: ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
  • WHERE ์กฐ๊ฑด: ์กฐํšŒํ•  ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๋Š” ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค. ์กฐ๊ฑด์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค.
  • ORDER BY ์—ด1 ASC|DESC: ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ํŠน์ • ์—ด์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•ฉ๋‹ˆ๋‹ค. ASC๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ, DESC๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์ž…๋‹ˆ๋‹ค.
  • LIMIT ์ˆซ์ž: ์กฐํšŒ๋˜๋Š” ๋ ˆ์ฝ”๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.

SELECT ์˜ˆ์‹œ

โ–ถ users ํ…Œ์ด๋ธ”์—์„œ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์กฐํšŒ

SELECT * FROM users;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ์—ด๊ณผ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

โ–ถ ํŠน์ • ์—ด๋งŒ ์กฐํšŒ

SELECT name, age, email FROM users;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ age๊ฐ€ 30๋ณด๋‹ค ํฐ ์‚ฌ์šฉ์ž๋“ค์˜ name๊ณผ age๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

โ–ถ ์กฐ๊ฑด๋ถ€ ์กฐํšŒ

SELECT name, age FROM users WHERE age > 30;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ age๊ฐ€ 30๋ณด๋‹ค ํฐ ์‚ฌ์šฉ์ž๋“ค์˜ name๊ณผ age๋ฅผ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

์ •๋ ฌ๊ณผ ์ œํ•œ

โ–ถ ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ํŠน์ • ์—ด์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ

SELECT name, age FROM users ORDER BY age DESC;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ name๊ณผ age๋ฅผ ์กฐํšŒํ•˜๊ณ , age๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ฉ๋‹ˆ๋‹ค.


โ–ถ ์กฐํšŒ ๊ฒฐ๊ณผ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œ

SELECT name, age FROM users ORDER BY age DESC LIMIT 5;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ name๊ณผ age๋ฅผ ์กฐํšŒํ•˜๊ณ , age๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•œ ํ›„, ์ƒ์œ„ 5๊ฐœ์˜ ๋ ˆ์ฝ”๋“œ๋งŒ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.

AS ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ

AS ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์กฐํšŒ๋œ ์—ด์— ๋ณ„์นญ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์•„๋ž˜ ์˜ˆ์‹œ์—์„œ users ํ…Œ์ด๋ธ”์—์„œ name๊ณผ age๋ฅผ ์กฐํšŒํ•˜๊ณ , ๊ฐ๊ฐ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ผ๋Š” ๋ณ„์นญ์„ ๋ถ™์—ฌ์„œ ๊ฒฐ๊ณผ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

SELECT name AS ์ด๋ฆ„, age AS ๋‚˜์ด FROM users;


๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ฒƒ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ด๊ณ  ์ค‘์š”ํ•œ ์ž‘์—… ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์กฐ๊ฑด๊ณผ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ ˆ์ฝ”๋“œ ์‚ญ์ œ(DELETE)๐Ÿค

๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์—์„œ ๋” ์ด์ƒ ํ•„์š”ํ•˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด SQL์˜ DELETE FROM ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

DELETE FROM ๊ตฌ๋ฌธ

DELETE FROM ๊ตฌ๋ฌธ์€ ํ…Œ์ด๋ธ”์˜ ํŠน์ • ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

DELETE FROM ํ…Œ์ด๋ธ”๋ช…
WHERE ์กฐ๊ฑด;
    • ํ…Œ์ด๋ธ”๋ช…: ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•  ํ…Œ์ด๋ธ”์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
    • WHERE ์กฐ๊ฑด: ์‚ญ์ œํ•  ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๋Š” ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค. ์ด ์กฐ๊ฑด์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.

DELETE FROM ์˜ˆ์‹œ

โ–ถ users ํ…Œ์ด๋ธ”์—์„œ id๊ฐ€ 1์ธ ์‚ฌ์šฉ์ž๋ฅผ ์‚ญ์ œ

DELETE FROM users
WHERE id = 1;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ id๊ฐ€ 1์ธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

โ–ถ ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ ˆ์ฝ”๋“œ ์‚ญ์ œ

DELETE FROM users
WHERE age > 30;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ age๊ฐ€ 30๋ณด๋‹ค ํฐ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.


โ–ถ ์—ฌ๋Ÿฌ ์กฐ๊ฑด์„ ์‚ฌ์šฉํ•œ ๋ ˆ์ฝ”๋“œ ์‚ญ์ œ

DELETE FROM users
WHERE age > 30;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์—์„œ age๊ฐ€ 30๋ณด๋‹ค ํฌ๊ณ  name์ด 'John Doe'์ธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.


โ–ถ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ ์‚ญ์ œํ•˜๋ ค๋ฉด?(์ฃผ์˜ ํ•„์š”)

DELETE FROM users;

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” users ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ๋งค์šฐ ์ฃผ์˜ํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

DELETE FROM ์‚ฌ์šฉ ์‹œ ์ฃผ์˜ํ•  ์ 

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

์‚ญ์ œ ์‹œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜์™€ ํ•ด๊ฒฐ์ฑ…

  • ์™ธ๋ž˜ ํ‚ค ์ œ์•ฝ ์กฐ๊ฑด ์œ„๋ฐ˜: ํ…Œ์ด๋ธ” ๊ฐ„์˜ ๊ด€๊ณ„๋กœ ์ธํ•ด ์‚ญ์ œ๊ฐ€ ์ œํ•œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” ํ•ด๋‹น ๊ด€๊ณ„๋ฅผ ์ดํ•ดํ•˜๊ณ  ์‚ญ์ œ๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์™ธ๋ž˜ ํ‚ค ์ œ์•ฝ ์กฐ๊ฑด์„ ๋ฌด์‹œํ•˜๊ณ  ์‚ญ์ œํ•˜๋ ค๋ฉด CASCADE ์˜ต์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ํ˜•์‹ ์˜ค๋ฅ˜: ์ž˜๋ชป๋œ ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ๊ฑด์œผ๋กœ ์ง€์ •ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ๋ฐ์ดํ„ฐ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์กฐ๊ฑด์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์—์„œ ๋งค์šฐ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ WHERE ์กฐ๊ฑด์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ์†์‹ค์„ ๋ฐฉ์ง€ํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

ํ•ต์‹ฌ ๋‚ด์šฉ๐Ÿ‘€

mariadb ๋ ˆ์ฝ”๋“œ ๊ด€๋ฆฌ

728x90
๋ฐ˜์‘ํ˜•