728x90
DML(Data Manipulation Language; ๋ฐ์ดํฐ ์กฐ์์ด)์ ๊ฐ๋
: ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ์๋ฃ๋ค์ ์ ๋ ฅ, ์์ , ์ญ์ , ์กฐํํ๋ ์ธ์ด
DML์ ์ ํ
์ธ์ธ์ ๋ฐ
SELECT | ํ ์ด๋ธ ๋ด ์นผ๋ผ์ ์ ์ฅ๋ ๋ฐ์ดํฐ ์กฐํ |
INSERT | ๋ฐ์ดํฐ ๋ด ์นผ๋ผ์ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐ |
UPDATE | ๋ฐ์ดํฐ ๋ด ์นผ๋ผ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์์ |
DELETE | ๋ฐ์ดํฐ ๋ด ์นผ๋ผ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ |
SELECT๋ฌธ ๋ฐ์ดํฐ ์กฐํ
: ๋ฐ์ดํฐ์ ๋ด์ฉ์ ์กฐํํ ๋ ์ฌ์ฉํ๋ ๋ช ๋ น์ด
์ ํ ์จ ๊ตฌํด์ค
SELECT [ALL | DISTINCT] ์์ฑ๋ช
1 ์์ฑ๋ช
2 ...
FROM ํ
์ด๋ธ๋ช
1, ...
[WHERE ์กฐ๊ฑด]
[GROUP BY ์์ฑ๋ช
1, ...]
[HAVING ๊ทธ๋ฃน์กฐ๊ฑด]
[ORDER BY ์์ฑ [ASC|DESC]];
SELECT | - ๊ฒ์ํ๊ณ ์ ํ๋ ์์ฑ๋ช
, ๊ณ์ฐ์์ ๊ธฐ์ - ์์ฑ๋ช ๋ณ์นญ์ AS๋ฅผ ์ฌ์ฉํ๋ฉฐ ์๋ต ๊ฐ๋ฅ - 2๊ฐ ์ด์์ ํ ์ด๋ธ์ ๋์์ผ๋ก ๊ฒ์ํ ๋๋ 'ํ ์ด๋ธ๋ช , ์์ฑ๋ช '์ผ๋ก ํํ - ์ ์ด๋ถ๋ถ์ ALL์ด ๊ธฐ๋ณธ๊ฐ ALL > ๋ชจ๋ ํํ์ ๊ฒ์ํ ๋ ์ฌ์ฉํ๊ณ , SELECT ๋ค์ ๋ช ์ํ์ง ์์ ๊ฒฝ์ฐ ALL๋ก ์ธ์ํจ DISTINCT > ์ค๋ณต๋ ์์ฑ์ด ์กฐํ๋ ๊ฒฝ์ฐ, ๊ทธ ์ค 1๊ฐ๋ง ๊ฒ์ (SELECT ๋ค์ ๋ช ์๋ ์์ฑ์ด ์ค๋ณต๋ ๊ฒฝ์ฐ ํ ๊ฐ๋ง ๊ฒ์) |
FROM | ์ง์์ ์ํด ๊ฒ์๋ ๋ฐ์ดํฐ๋ค์ ํฌํจํ๋ ํ ์ด๋ธ๋ช ๊ธฐ์ |
WHERE | ๊ฒ์ํ ์กฐ๊ฑด์ ๊ธฐ์ |
GROUP BY | ์์ฑ๊ฐ์ ๊ทธ๋ฃน์ผ๋ก ๋ถ๋ฅํ๊ณ ์ ํ ๋ ์ฌ์ฉ |
HAVING | GROUP BY์ ์ํด ๋ถ๋ฅํ ํ ๊ทธ๋ฃน์ ๋ํ ์กฐ๊ฑด ์ง์ |
ORDER BY | - ์์ฑ ๊ฐ์ ์ ๋ ฌํ๊ณ ์ ํ ๋ ์ฌ์ฉ - ASC์ DESC ํค์๋ ์๋ต ์, ์ค๋ฆ์ฐจ์ ์ ๋ ฌ ASC: ์ค๋ฆ์ฐจ์ DESC: ๋ด๋ฆผ์ฐจ์ |
SELECT ๊ณผ๋ชฉ
FROM ์ฑ์ ;
SELECT DISTINCT ๊ณผ๋ชฉ
FROM ํ
์ด๋ธ;
SELECT ๊ณผ๋ชฉ
FROM ์ฑ์ ;
WHERE ํ์ = 'A';
SELECT DISTICT ๊ณผ๋ชฉ
FROM ์ฑ์ ;
WHERE ํ์ = 'A';
SELECT COUNT(DISTINCT ๊ณผ๋ชฉ)
FROM ์ฑ์ ;
SELECT DISTICNT ๊ณผ๋ชฉ, ํ์
FROM ์ฑ์ ;
WHERE ์
: WHERE์ ์กฐ๊ฑด์์๋ ๋น๊ต, ๋ฒ์, ์งํฉ, ํจํด, NULL, ๋ณตํฉ์กฐ๊ฑด์ด ์์
๋น๊ต์ | = | ๊ฐ์ด ๊ฐ์ ๊ฒฝ์ฐ ์กฐํ |
<> , != | ๊ฐ์ด ๋ค๋ฅธ ๊ฒฝ์ฐ ์กฐํ | |
<, <=, >, >= | ๋น๊ต ์ฐ์ฐ์ ํด๋นํ๋ ๋ฐ์ดํฐ ์กฐํ | |
๋ฒ์ | BETWWEN | ์ปฌ๋ผ BETWEEN ๊ฐ1 AND ๊ฐ2 ์ปฌ๋ผ >=๊ฐ1 AND ์ปฌ๋ผ<=๊ฐ2 ๊ฐ1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , ๊ฐ2๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ๋ฐ์ดํฐ ์กฐํ |
์งํฉ |
IN | ์ปฌ๋ผ IN (๊ฐ1, ๊ฐ2, ...) ์ปฌ๋ผ์ด IN ์์ ํฌํจ๋ ๊ฒฝ์ฐ์ ๋ฐ์ดํฐ ์กฐํ |
NOT IN | ์ปฌ๋ผ NOT IN (๊ฐ1, ๊ฐ2, ...) ์ปฌ๋ผ์ด IN ์์ ํฌํจ๋์ด ์์ง ์์ ๊ฒฝ์ฐ์ ๋ฐ์ดํฐ ์กฐํ |
|
ํจํด | LIKE | ์ปฌ๋ผ LIKE ํจํด ์ปฌ๋ผ์ด ํจํด์ ํฌํจ๋ ๊ฒฝ์ฐ ๋ฐ์ดํฐ์กฐํ % :0๊ฐ ์ด์ ๋ฌธ์์ด๊ณผ ์ผ์น [ ] :ํน์ ์์น 1๊ฐ์ ๋ฌธ์์ ์ผ์น |
NULL |
IS NULL | ์ปฌ๋ผ IS NULL ์ปฌ๋ผ์ด NULL์ธ ๋ฐ์ดํฐ ์กฐํ |
IS NOT NULL | ์ปฌ๋ผ IN NOT NULL ์ปฌ๋ผ์ด NULL์ด ์๋ ๋ฐ์ดํฐ ์กฐํ |
|
๋ณตํฉ ์กฐ๊ฑด | AND | ์กฐ๊ฑด1 AND ์กฐ๊ฑด2 ์กฐ๊ฑด1๊ณผ ์กฐ๊ฑด2 ๋ชจ๋๋ฅผ ๋ง์กฑํ๋ ๋ฐ์ดํฐ ์กฐํ |
OR | ์กฐ๊ฑด1 OR ์กฐ๊ฑด2 ์กฐ๊ฑด1๊ณผ ์กฐ๊ฑด2 ๋ ์ค ํ๋๋ฅผ ๋ง์กฑํ๋ ๋ฐ์ดํฐ ์กฐํ |
|
NOT | NOT ์กฐ๊ฑด ์กฐ๊ฑด์ ํด๋นํ์ง ์๋ ๋ฐ์ดํฐ ์กฐํ |
* ์ํ(PRODUCT) ํ ์ด๋ธ์์ ๊ฐ๊ฒฉ(PRICE)์ด 50000๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ 80000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ํํ ์กฐํ
SELECT *
FROM PRODUCT
WHERE PRICE BETWEEN 50000 AND 80000;
* ์ํ(PRODUCT) ํ ์ด๋ธ์์ ๊ฐ๊ฒฉ(PRICE)์ด 40000 ๋๋ 50000 ๋๋ 60000์ธ ํํ ์กฐํ
SELECT *
FROM PRODUCT
WHERE PRICE IN (40000, 50000, 60000);
* ์ํ(PRODUCT) ํ ์ด๋ธ์์ ์ด๋ฆ(NAME)์ด '์ ๋ณด'๋ก ์์๋๋ ๋ฌธ์์ด
SELECT *
FROM PRODUCT
WHERE NAME LIKE '์ ๋ณด%';
* ์ํ(PRODUCT) ํ ์ด๋ธ์์ ๊ฐ๊ฒฉ(PRICE)์ด NULL ๊ฐ์ธ ๊ฒฝ์ฐ์ ํํ์ ์กฐํ
SELECT *
FROM PRODUCT
WHERE PRICE IS NULL;
GROUP BY์
: ์์ฑ ๊ฐ์ ๊ทธ๋ฃน์ผ๋ก ๋ถ๋ฅํ๊ณ ์ ํ ๋ ์ฌ์ฉ
SELECT ์ง์ฑ
, COUNT(์ง์ฑ
), SUM(๊ธ์ฌ)
FROM ๊ธ์ฌ
GROP BY ์ง์ฑ
;
SELECT ๋ถ์, SUM(๊ธ์ฌ) AS ๊ธ์ฌํฉ๊ณ
FROM ๊ธ์ฌ
GROUP BY ๋ถ์;
SELECT ์ง์ฑ
, ๋ถ์, SUM(๊ธ์ฌ) AS ๊ธ์ฌํฉ๊ณ
FROM ๊ธ์ฌ
GROUP BY ์ง์ฑ
, ๋ถ์;
SELECT COUNT(*)
FROM ๊ธ์ฌ;
HAVING์
: GROUP BY์ ์ํด ๋ถ๋ฅํ ํ ๊ทธ๋ฃน์ ๋ํ ์กฐ๊ฑด์ ์ง์ ํ ๋ ์ฌ์ฉ
SELECT ์ง์ฑ
, ๋ถ์, SUM(๊ธ์ฌ) AS ๊ธ์ฌํฉ๊ณ
FROM ๊ธ์ฌ
GROUP BY ์ง์ฑ
, ๋ถ์
HAVING ๊ธ์ฌํฉ๊ณ >=5000;
ORDER BY์
: ์์ฑ๊ฐ์ ์ ๋ ฌํ๊ณ ์ ํ ๋ ์ฌ์ฉ
SELECT *
FROM ์ฑ์
ORDER BY ASC ์ด๋ฆ;
SELECT ์ด๋ฆ, ๊ณผ๋ชฉ, ํ์
FROM ์ฑ์
ORDER BY ๊ณผ๋ชฉ, ์ด๋ฆ ASC;
SELECT *
FROM ์ฑ์
ORDER BY ํ์ DESC , ์ด๋ฆ ASC;
728x90
'๐ค์๊ฒฉ์ฆ๐ค > ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์๋ฐ ๋ฐ๋ณต๋ฌธ (0) | 2024.04.21 |
---|---|
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ C์ธ์ด main ํจ์์ ์ฌ์ฉ์ ์ ์ ํจ์ (0) | 2024.04.21 |
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ C์ธ์ด (0) | 2024.04.21 |
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์ค๊ธฐ (1) ์๊ตฌ์ฌํญ ํ์ธ (0) | 2024.04.21 |
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์ค๊ธฐ ์ค๋น (1) | 2024.04.21 |