๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[SQL] ๋ฐ์ดํ„ฐ ๋‹ค๋ฃจ๊ธฐ ๋ณธ๋ฌธ

๐Ÿ‘ฉ‍๐Ÿ’ป ์ปดํ“จํ„ฐ ๊ตฌ์กฐ/Database

[SQL] ๋ฐ์ดํ„ฐ ๋‹ค๋ฃจ๊ธฐ

์ง•์ง•์•ŒํŒŒ์นด 2023. 3. 13. 16:11
728x90
๋ฐ˜์‘ํ˜•

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” ์—˜๋ฆฌ์Šค IoT 1๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :-)>

 

๐Ÿ‘ฉ‍๐Ÿ’ป SQL (Structed Query Language)

: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•˜๊ณ  ์กฐ์ž‘ํ•˜๊ธฐ ์‰ฌ์šด ํ‘œ์ค€ ์–ธ์–ด

 

โญ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

: ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๊ณต์œ ํ•ด ์‚ฌ์šฉํ•  ๋ชฉ์ ์œผ๋กœ ํ†ตํ•ฉํ•˜์—ฌ ๊ด€๋ฆฌ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ชจ์Œ 

 

 

๐Ÿ‘ฉ‍๐Ÿ’ป ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

: ํ•˜๋‚˜ ์ด์ƒ์˜ ํ…Œ์ด๋ธ”๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ ์„œ๋กœ ์—ฐ๊ฒฐ๋œ ๋ฐ์ดํ„ฐ ๊ฐ€์ง (SQL๋กœ ์ œ์–ด)

 

โญ ํ…Œ์ด๋ธ”

: ์ปฌ๋Ÿผ๊ณผ ๋ ˆ์ฝ”๋“œ๋กœ ๊ตฌ์„ฑ๋œ ํ‘œ

: ๋ชจ๋“  ํ…Œ์ด๋ธ”์€ ๊ณ ์œ ์˜ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„ 

// ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰
SELECT ๊ฒ€์ƒ‰ํ•  ์นผ๋Ÿผ FROM ํ…Œ์ด๋ธ”;

- DISTINCT : ๋šœ๋ ทํ•œ, ๋ถ„๋ช…ํ•œ ๋’ค์— ๋‚˜์˜ค๋Š” ์ปฌ๋Ÿผ์˜ ์ค‘๋ณต ์ œ๊ฑฐํ•จ 

- WHERE : ๊ฒ€์ƒ‰ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์กฐ๊ฑด์„ ์„ค์ • 

SELCT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
WHERE ์กฐ๊ฑด;

 

- LIKE : ํŠน์ • ๋ฌธ์ž๊ฐ€ ํฌํ•จ๋œ ๋ฌธ์ž์—ด์„ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉ (๋Œ€์†Œ๋ฌธ์ž๋ฅผ ์šฐ์„ ์ˆœ์œ„๋กœ ๊ตฌ๋ถ„)

- ORDER BY : ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์ •๋ ฌํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ (ASC : ์˜ค๋ฆ„์ฐจ์ˆœ, ์ž‘์€๊ฐ’ DESC : ๋‚ด๋ฆผ์ฐจ์ˆœ, ํฐ๊ฐ’)

- INSERT : ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ…Œ์ด๋ธ”์— ๊ฐ’์„ ์ €์žฅ

INSERT INTO ํ…Œ์ด๋ธ” (์ปฌ๋Ÿผ) VALUES(์ถ”๊ฐ€ํ•  ๋ฐ์ดํ„ฐ);

- UPDATE : ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฏธ ์ €์žฅ๋œ ๊ฐ’์„ ์ˆ˜์ • 

UPDATE ํ…Œ์ด๋ธ”
SET ๋ณ€๊ฒฝํ•  ๊ฐ’
WHERE ์กฐ๊ฑด;

- DELETE : ํ…Œ์ด๋ธ”์—์„œ ์ด๋ฏธ ์ €์žฅ๋œ ๊ฐ’์„ ์‚ญ์ œ 

- COUNT : ๊ฒ€์ƒ‰ํ•œ ๊ฒฐ๊ณผ์˜ ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜ (NULL ๋ฐ์ดํ„ฐ ์ œ์™ธ)

SELECT COUNT(๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ) FROM ํ…Œ์ด๋ธ”;

- LIMIT : ํ…Œ์ด๋ธ”์—์„œ ์ถœ๋ ฅํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œ 

SELECT * FROM ํ…Œ์ด๋ธ” LIMIT ์ œํ•œํ•  ์ˆซ์ž

- SUM : ์ง€์ •ํ•œ ์ปฌ๋Ÿผ๋“ค์˜ ๊ฐ’์„ ๋ชจ๋‘ ๋”ํ•˜์—ฌ ์ด์ ์„ ๊ตฌํ•ด์ฃผ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜ 

SELECT SUM(๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ) FROM ํ…Œ์ด๋ธ”;

- AVG : ์ง€์ •ํ•œ ์ปฌ๋Ÿผ๋“ค์˜ ํ‰๊ท ๊ฐ’์„ ๊ตฌํ•ด์ฃผ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜

SELECT AVG(ํ‰๊ท  ๊ตฌํ•  ์ปฌ๋Ÿผ) FROM ํ…Œ์ด๋ธ”;

- MAX : ํ…Œ์ด๋ธ”์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์—์„œ ์ตœ๋Œ€๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜ (์ˆซ์žํ˜• ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฌธ์žํ˜•๋„ ๊ฐ€๋Šฅ)

SELECT MAX(๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ) FROM ํ…Œ์ด๋ธ”;

MAX : ํ…Œ์ด๋ธ”์— ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์—์„œ ์ตœ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜ (์ˆซ์žํ˜• ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฌธ์žํ˜•๋„ ๊ฐ€๋Šฅ)

SELECT MIN(๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ) FROM ํ…Œ์ด๋ธ”;

- GROUP BY : ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋ฃน

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
GROUP BY ๊ทธ๋ฃน์˜ ๊ธฐ์ค€ ์ปฌ๋Ÿผ;

- HAVING : ๋ฐ์ดํ„ฐ ๊ทธ๋ฃน์— ์กฐ๊ฑด ์ ์šฉํ•˜๊ธฐ

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
GROUP BY ๊ทธ๋ฃน์˜ ๊ธฐ์ค€ ์ปฌ๋Ÿผ
HAVING ์กฐ๊ฑด;

- INNER JOIN : ๋‘๊ฐœ์˜ ํ…Œ์ด๋ธ” ์กฐํšŒํ•˜๊ธฐ (๋‘ ๋ฐ์ดํ„ฐ์ค‘ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„๋งŒ ์ถœ๋ ฅ)

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
INNER JOIN ์—ฐ๊ฒฐํ•  ์ปฌ๋Ÿผ;

- INNER JOIN ON : ์กฐ๊ฑด์„ ์ ์šฉํ•ด ๋‘ ๊ฐœ์˜ ํ…Œ์ด๋ธ” ์กฐํšŒํ•˜๊ธฐ 

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
INNER JOIN ์—ฐ๊ฒฐํ•  ํ…Œ์ด๋ธ”
ON ์—ฐ๊ฒฐํ•  ์กฐ๊ฑด ์ปฌ๋Ÿผ;

- LEFT JOIN : ์™ผ์ชฝ์˜ ๋ชจ๋“  ํ–‰์„ ์กฐํšŒํ•˜๊ธฐ (์™ผ์ชฝ ๋ฐ์ดํ„ฐ์™€ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„ ์ถœ๋ ฅ)

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
LEFT JOIN ์—ฐ๊ฒฐํ•  ํ…Œ์ด๋ธ”
ON ์—ฐ๊ฒฐํ•  ์กฐ๊ฑด ์ปฌ๋Ÿผ;

- RIGHT JOIN : ์˜ค๋ฅธ์ชฝ์˜ ๋ชจ๋“  ํ–‰์„ ์กฐํšŒํ•˜๊ธฐ (์˜ค๋ฅธ์ชฝ ๋ฐ์ดํ„ฐ์˜ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„ ์ถœ๋ ฅ)

SELECT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ
FROM ํ…Œ์ด๋ธ”
RIGHT JOIN ์—ฐ๊ฒฐํ•  ํ…Œ์ด๋ธ”
ON ์—ฐ๊ฒฐํ•  ์กฐ๊ฑด ์ปฌ๋Ÿผ;

 

 

 

 

728x90
๋ฐ˜์‘ํ˜•
Comments