๐ ๋ค์ด๊ฐ๋ฉฐ
์ด๋ฒ ๊ธ์์๋ SQL์ ์ธ ๊ฐ์ง ์ธ์ด ๋ถ๋ฅ DMLยทDDLยทDCL๊ณผ ์ง๊ณํจ์๋ฅผ ์ ๋ฆฌํ๋ค. ์ด ๋ช
๋ น์ด๋ค์ ANSI ํ์ค ์ฟผ๋ฆฌ๋ผ ๋๋ถ๋ถ์ DBMS์์ ๊ณตํต์ผ๋ก ์ธ ์ ์๋ค.
SQL์ ๋ชฉ์ ์ ๋ฐ๋ผ ์ธ ๋ถ๋ฅ๋ก ๋๋๋ค.
| ๋ถ๋ฅ | ์ด๋ฆ | ๋ช
๋ น์ด |
|---|
| DML | ๋ฐ์ดํฐ ์กฐ์์ด | INSERT UPDATE DELETE SELECT |
| DDL | ๋ฐ์ดํฐ ์ ์์ด | CREATE ALTER DROP |
| DCL | ๋ฐ์ดํฐ ์ ์ด์ด | GRANT REVOKE (๊ถํ) |
1. DML โ ๋ฐ์ดํฐ ์กฐ์
INSERT โ ๋ ์ฝ๋ ์ถ๊ฐ
1
| insert into emp(empno, ename, sal) values(7777, 'Dong Hee', 40000);
|
๐ก ์ง์ ํ ์ปฌ๋ผ(๋ฒํธยท์ด๋ฆยท๊ธ์ฌ)๋ง ๋ฃ์ผ๋ฉด ๋๋จธ์ง๋ NULL๋ก ์ฑ์์ง๋ค.
DELETE โ ๋ ์ฝ๋ ์ญ์
1
| delete from emp where ename = 'MILLER';
|
โ ๏ธ WHERE๋ฅผ ๋นผ๋ฉด ์ ์ฒด ๋ ์ฝ๋๊ฐ ์ญ์ ๋๋ ์ฃผ์.
UPDATE โ ๋ ์ฝ๋ ์์
1
| UPDATE EMP SET JOB = 'PRESIDENT', SAL = 5000 WHERE EMPNO = 7369;
|
SET์ผ๋ก ์ฌ๋ฌ ์ปฌ๋ผ์ ํ ๋ฒ์ ๋ฐ๊พผ๋ค. (SMITH๊ฐ ๋ฒผ๋ฝ ์ง๊ธ!)
2. DDL โ ๋ฐ์ดํฐ ์ ์
CREATE(์์ฑ) ์ธ์ ํ
์ด๋ธ ๊ตฌ์กฐ ์์ฒด๋ฅผ ๋ฐ๊พธ๋ ALTER๊ฐ ๊ฐ๋ ฅํ๋ค.
ALTER โ ์ปฌ๋ผ ์ญ์ /์ถ๊ฐ
1
2
| ALTER TABLE EMP DROP COLUMN COMM; -- ์ปฌ๋ผ ์ญ์
ALTER TABLE EMP ADD phone char(13); -- ์ปฌ๋ผ ์ถ๊ฐ
|
| ๋ช
๋ น | ์ญํ |
|---|
ALTER TABLE ~ DROP COLUMN | ์ปฌ๋ผ(์ด) ์์ฒด ์ญ์ |
ALTER TABLE ~ ADD | ์ปฌ๋ผ ์ถ๊ฐ (๊ฐ์ NULL๋ก ์์) |
โ ๏ธ DDL์ ํ
์ด๋ธ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋ ๊ฐ๋ ฅํ ๋ช
๋ น์ด๋ผ ์ ์คํ ์จ์ผ ํ๋ค.
3. DCL โ ๊ถํ ์ ์ด
DCL์ ๊ถํ์ ์ฃผ๊ณ (GRANT) ๋บ๋(REVOKE) ๊ฒ์ด๋ค. ์ค๋ผํด์์ ํน์ ์ฌ์ฉ์(BATMAN)์๊ฒ ๊ถํ์ ๋ถ์ฌํ๋ ๊ฒ์ด ์ด์ ํด๋นํ๋ค.
4. ์ง๊ณํจ์
์ฌ๋ฌ ํ์ ํ๋์ ๊ฐ์ผ๋ก ์์ฝํ๋ค.
| ํจ์ | ์ญํ |
|---|
COUNT() | ์ด ๊ฐ์ |
AVG() | ํ๊ท |
MAX() / MIN() | ์ต๋ / ์ต์ |
SUM() | ํฉ๊ณ |
1
2
3
4
5
| SELECT COUNT(EMPNO) AS ์ด์ฌ์์ FROM EMP;
SELECT AVG(SAL) AS ํ๊ท ๊ธ์ฌ FROM EMP;
SELECT MAX(SAL) AS ์ต๋๊ฐ FROM EMP;
SELECT MIN(SAL) AS ์ต์๊ฐ FROM EMP;
SELECT SUM(SAL) AS ๊ธ์ฌํฉ FROM EMP;
|
๐ก AS๋ ๊ฒฐ๊ณผ ์ปฌ๋ผ์ ๋ณ์นญ์ ๋ถ์ธ๋ค. ๋ณ์นญ์ด ์์ผ๋ฉด COUNT(EMPNO)์ฒ๋ผ ๊ทธ๋๋ก ๋์ค๋ฏ๋ก, ๊ฐ๋
์ฑ์ ์ํด ์ฌ์ฉํ๋ค.
5. ์ ๋ ฌยท๊ทธ๋ฃนํ
1
2
3
| SELECT * FROM EMP ORDER BY SAL DESC; -- ๋ด๋ฆผ์ฐจ์
SELECT * FROM EMP ORDER BY SAL ASC; -- ์ค๋ฆ์ฐจ์
SELECT DEPTNO FROM EMP GROUP BY DEPTNO; -- ๊ทธ๋ฃนํ(์ค๋ณต ์ ๊ฑฐ)
|
| ์ | ์ญํ |
|---|
ORDER BY ์ปฌ๋ผ DESC/ASC | ๋ด๋ฆผ/์ค๋ฆ์ฐจ์ ์ ๋ ฌ |
GROUP BY ์ปฌ๋ผ | ์ค๋ณต ๊ฐ์ ๋ฌถ์ด ์ข
๋ฅ๋ณ๋ก |
๐ ์ ๋ฆฌ
1
2
3
4
5
6
| SQL 3๋ถ๋ฅ + ์ง๊ณ
โโ DML INSERT/UPDATE/DELETE/SELECT (๋ฐ์ดํฐ ์กฐ์)
โโ DDL CREATE/ALTER/DROP (๊ตฌ์กฐ ์ ์)
โโ DCL GRANT/REVOKE (๊ถํ ์ ์ด)
โโ ์ง๊ณ COUNT/AVG/MAX/MIN/SUM (+ AS ๋ณ์นญ)
โโ ์ ๋ ฌ ORDER BY(์ ๋ ฌ) / GROUP BY(๊ทธ๋ฃนํ)
|
| ๊ฐ๋
| ํ ์ค ์ ์ |
|---|
| DML/DDL/DCL | ์กฐ์ / ๊ตฌ์กฐ ์ ์ / ๊ถํ |
| AS | ๊ฒฐ๊ณผ ์ปฌ๋ผ ๋ณ์นญ |
| ORDER BY / GROUP BY | ์ ๋ ฌ / ๊ทธ๋ฃนํ |
SQL์ ๋ชฉ์ ์ ๋ฐ๋ผ DML(์กฐ์)ยทDDL(์ ์)ยทDCL(์ ์ด)๋ก ๋๋๋ค. ํนํ DDL์ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋ ๊ฐ๋ ฅํ ๋ช
๋ น์ด์ด๋ ์ ์คํ, WHERE ์๋ DELETE/UPDATE๋ ํญ์ ์กฐ์ฌํ์.
Comments powered by Disqus.