๐ DML(Data Manipulation Language(๋ฐ์ดํฐ ์กฐ์์ด))
- INSERT : ํ ์ด๋ธ์ ์๋ก์ด ๋ก์ฐ๋ฅผ ์ถ๊ฐํ๋ ๊ตฌ๋ฌธINSERT INTO ํ ์ด๋ธ๋ช (์ปฌ๋ผ๋ช ) VALUES (๊ฐ)
INSERT INTO EMP01 (EMPNO, ENAME, JOB) VALUES(222,'๊น์ ๋','๊ฐ๋ฐ');
INSERT INTO EMP01 (EMPNO, ENAME, JOB) VALUES(223,'๋ก์ ','์ธ์ฌ');
INSERT INTO EMP01 (EMPNO, ENAME, JOB) VALUES(224,'์ง์','์์ฐ');
--์ปฌ๋ผ๋ชฉ๋ก์ ์๋ตํ๋ ๊ฒฝ์ฐ (๋ชจ๋ ์ปฌ๋ผ์ DATA ๋ฃ์๋๋ง!)
INSERT INTO EMP01 VALUES(225,'๋ฆฌ์ฌ','๊ฐ๋ฐ');
--์ปฌ๋ผ ๋ชฉ๋ก์ ๋ชจ๋ ์ปฌ๋ผ์ ์์ง ์์ ๊ฒฝ์ฐ (JOB์ NULL ๊ฐ์ด ๋ค์ด๊ฐ)
INSERT INTO EMP01 (EMPNO,ENAME) VALUES (226,'์ฌ๋');
--NULL์ ๋ช ์์ ์ผ๋ก ์ ์ฅํ ์๋ ์์
INSERT INTO EMP01 (EMPNO, ENAME, JOB) VALUES (227,'๋์ฐ', NULL);
๐ ํ
์ด๋ธ ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ๋ณต์ฌ
--ํ ์ด๋ธ ๊ตฌ์กฐ ๋ณต์ฌ
CREATE TABLE EMP02 AS SELECT EMPNO, ENAME, JOB FROM EMP01 WHERE 1=0;
SELECT * FROM EMP02;
--ํ ์ด๋ธ ๋ฐ์ดํฐ ๋ณต์ฌ (์ปฌ๋ผ์ด๋ฆ์ด ๊ฐ์ง ์์๋๋จ, ์์๋ง ์ง์ผ์ฃผ๋ฉด OK)
INSERT INTO EMP02(EMPNO, ENAME, JOB) SELECT EMPNO, ENAME, JOB FROM EMP;
SELECT * FROM EMP02;
--๋ชจ๋ ์ปฌ๋ผ ๋ณต์ฌ์ ๋ช ์ X ๋ ๊ฐ๋ฅ
INSERT INTO EMP02 SELECT EMPNO, ENAME, JOB FROM EMP01; SELECT * FROM EMP02;
๐ ์๋ธ์ฟผ๋ฆฌ๋ก ๋ฐ์ดํฐ ์ ์ฅํ๊ธฐ
INSERT INTO ํ ์ด๋ธ๋ช ์๋ธ์ฟผ๋ฆฌ INSERT ALL INTO ํ ์ด๋ธ๋ช (์ปฌ๋ผ๋ช ) VALUES (์ปฌ๋ผ๋ช ) INTO ํ ์ด๋ธ๋ช (์ปฌ๋ผ๋ช ) VALUES(์ปฌ๋ผ๋ช ) ์๋ธ์ฟผ๋ฆฌ
--์๋ธ์ฟผ๋ฆฌ ์ด์ฉํด ํ๊บผ๋ฒ์ DATA ์ฝ์
INSERT ALL
INTO EMP03 ( EMPNO, ENAME, JOB) VALUES (EMPNO, ENAME, JOB)
INTO EMP04 ( EMPNO, ENAME, HIREDATE) VALUES (EMPNO, ENAME, HIREDATE)
SELECT EMPNO, ENAME, JOB, HIREDATE FROM EMP;
SELECT * FROM EMP03;
SELECT * FROM EMP04;
๐ UPDATE, ๋ก์ฐ ๋ด์ ์ปฌ๋ผ ๊ฐ์ ์์ ํ๋ ๊ตฌ๋ฌธ
UPDATE ํ ์ด๋ธ๋ช SET ์ปฌ๋ผ = ๊ฐ, ์ปฌ๋ผ = ๊ฐ.. WHERE ์กฐ๊ฑด๋ฌธ
--์ฌ์๋ค์ ์ง๋ฌด๋ฅผ ๊ฐ๋ฐ๋ก ๋ณ๊ฒฝํ๋ค.
UPDATE EMP01 SET JOB = '๊ฐ๋ฐ'; SELECT * FROM EMP01;
--์ฌ์๋ค์ ์ฌ์๋ฒํธ, ์ด๋ฆ, ์ง๋ฌด๋ฅผ ๋ณ๊ฒฝํ๋ค.
UPDATE EMP01 SET EMPNO = 777, ENAME ='์ ๋' , JOB = '๊ฐ๋ฐ';
--์ฐ๊ทนํ ๋ถ์์ ๊ทผ๋ฌดํ๊ณ ์๋ ์ฌ์๋ค์ ๊ธ์ณ๋ฅผ ์ ์ฒด ํ๊ท ๊ธ์ฌ๋ก ์ค์ ํ๋ค.
UPDATE EMP SET SAL = (SELECT TRUNC(AVG(SAL)) FROM EMP) WHERE JOB='์ฐ๊ทนํ';
--20๋ฒ ๋ถ์์ ๊ทผ๋ฌดํ๊ณ ์๋ ์ฌ์๋ค์ ์ง์์๊ด์ KING ์ผ๋ก ํ๊ณ ๊ธ์ฌ๋ฅผ ์ ์ฒด ๊ธ์ฌ์ ์ต๊ณ ์ก์ผ๋ก ์ค์ ํ๋ค.
UPDATE EMP01 SET MGR = (), SAL = () WHERE DEPTNO =20; --ํท๊ฐ๋ฆฌ๋ ๊ฒฝ์ฐ ์ด๋ ๊ฒ ๋ง๋ค์ด๋๊ณ
SELECT EMPNO FROM EMP01 WHERE ENAME = 'KING'; --๊ดํธ์ ๋ค์ด๊ฐ ์ ๋ณด๋ฅผ ํ๋์ฉ ์ฑ์ฐ๊ธฐ
SELECT MAX(SAL) FROM EMP01;
--์ง๋ฌด๊ฐ CLERK ์ธ ์ฌ์๋ค์ ์ง๋ฌด์ ๊ธ์ฌ๋ฅผ ์ต๊ณ ์ก์ ๋ฐ๋ ์ฌ์์ ์ง๋ฌด์ ๊ธ์ฌ์ก์ผ๋ก ๋ณ๊ฒฝํ๋ค.
--์ง๋ฌด์ ๊ธ์ฌ ๋ฐ๋ก
UPDATE EMP01 SET JOB=(SELECT JOB FROM EMP01 WHERE SAL =(SELECT MAX(SAL) FROM EMP01)),
SAL=(SELECT SAL FROM EMP01 WHERE SAL =(SELECT MAX(SAL) FROM EMP01))
WHERE JOB = 'CLERK';
--์ง๋ฌด ๊ธ์ฌ ํ๊บผ๋ฒ์
UPDATE UPDATE EMP01 SET(JOB,SAL) = (SELECT JOB, SAL FROM EMP01 WHERE SAL =(SELECT MAX(SAL) FROM EMP01))
WHERE JOB ='CLERK';
๐ DELETE, ํ
์ด๋ธ ๋ด์ ๋ก์ฐ๋ฅผ ์ญ์ ํ๋ ๊ตฌ๋ฌธ
DELETE FROM ํ ์ด๋ธ๋ช WHERE ์กฐ๊ฑด๋ฌธ
--์กฐ๊ฑด์ ์ ์ฌ์ฉํ์ง ์์ผ๋ฉด ํ ์ด๋ธ์ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋๋ค.
DELETE FROM EMP01;
-- ์ฌ์๋ฒํธ๊ฐ 7499์ธ ์ฌ์์ ์ ๋ณด๋ฅผ ์ญ์ ํ๋ค.
DELETE FROM EMP01 WHERE EMPNO = 7499;
--์ฌ์์ ๊ธ์ฌ๊ฐ ํ๊ท ๊ธ์ฌ ์ดํ์ธ ์ฌ์์ ์ ๋ณด๋ฅผ ์ญ์ ํ๋ค.
DELETE FROM EMP01 WHERE SAL <= (SELECT AVG(SAL) FROM EMP01);
--์ปค๋ฏธ์ ์ ๋ฐ์ง ์๋ ์ฌ์๋ค์ ์ ๋ณด๋ฅผ ์ญ์ ํ๋ค.
DELETE FROM EMP01 WHERE COMM IS NULL;
'์ด๋ก > DB' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฌด์กฐ๊ฑด ๋ฐ๋ผํด๋ณด๊ธฐ] CONSTRAINT ์ ์ฝ์กฐ๊ฑด (0) | 2021.05.26 |
---|---|
[๋ฌด์กฐ๊ฑด ๋ฐ๋ผํด๋ณด๊ธฐ] TABLE (0) | 2021.05.26 |
[๋ฌด์กฐ๊ฑด ๋ฐ๋ผํด๋ณด๊ธฐ] DML ๊ทธ๋ฃนํจ์, HAVING, JOIN, SET, ์๋ธ์ฟผ๋ฆฌ (0) | 2021.05.25 |
[๋ฌด์กฐ๊ฑด ๋ฐ๋ผํด๋ณด๊ธฐ] DML ๋ ์งํจ์ , DECODE, CASE (0) | 2021.05.25 |
[๋ฌด์กฐ๊ฑด ๋ฐ๋ผํด๋ณด๊ธฐ] DML ์ ๋ ฌ, ์ซ์ํจ์, ๋ฌธ์์ดํจ์ (0) | 2021.05.25 |