-INSERTコマンドはテーブルへデーターを追加する。
--INSERTの文法 INSERT INTO table_name(column1, column2, ...) VALUES (データー, 'データー', ...); INSERT INTO table_name(column1, column2, ...) SELECT column1, column2, ... FROM table_name WHERE 条件; -実際のデーターはVALUES()内へ入力し文字列は''で囲む -各データーの区別は"," -テーブル名横の()省略時には自動ですべてのコラムをVALUES()内へ入力する。
--INSERT例 --すべてのデーターを入力する場合 SQL> INSERT INTO emp 2 VALUES (7369, 'SMITH', 'CLERK', 7902, TO_DATE('80/12/17'), 800, NULL, 20); 1行が作成されました。 --入力したいデーターのみINSERT SQL> INSERT INTO dept (deptno, dname) 2 VALUES (10, 'ACCOUNTING'); 1行が作成されました。 --SELECT文を使ったINSERT SQL> INSERT INTO dept2 2 SELECT * FROM dept; INSERT INTO dept2
■UPDATE
-テーブル内のデーターを修正(変更)する。
--UPDATE文法 UPDATE table_name SET column1 = 値(修正内容), column2 = 値, ... WHERE 条件
--UPDATE例 --変更前確認 SQL> SELECT * FROM emp; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- -------- ---------- ---------- ---------- 7369 SMITH CLERK 7902 13-08-19 800 20 7499 ALLEN SALESMAN 7698 13-08-19 1600 300 30 7521 WARD SALESMAN 7698 13-08-19 1250 500 30 7566 JONES MANAGER 7839 13-08-19 2975 20 7654 MARTIN SALESMAN 7698 13-08-19 1250 1400 30 7698 BLAKE MANAGER 7839 13-08-19 2850 30 7782 CLARK MANAGER 7839 13-08-19 2450 10 7788 SCOTT ANALYST 7566 13-08-19 3000 20 7839 KING PRESIDENT 13-08-19 5000 10 7844 TURNER SALESMAN 7698 13-08-19 1500 0 30 7876 ADAMS CLERK 7788 13-08-19 1100 20 EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- -------- ---------- ---------- ---------- 7900 JAMES CLERK 7698 13-08-19 950 30 7902 FORD ANALYST 7566 13-08-19 3000 20 7934 MILLER CLERK 7782 13-08-19 1300 10 14行が選択されました。 --社員番号7902の社員の部署番号を30に修正 SQL> UPDATE emp 2 SET deptno = 30 3 WHERE empno = 7902; 1行が更新されました。 --部署番号20の社員たちの給与を10%UP SQL> UPDATE emp 2 SET sal = sal * 1.1 3 WHERE deptno = 20; 4行が更新されました。 --すべての社員の入社日を本日に修正 SQL> UPDATE emp 2 SET hiredate = SYSDATE; 14行が更新されました。 --変更後の確認 SQL> SELECT * FROM emp; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- -------- ---------- ---------- ---------- 7369 SMITH CLERK 7902 13-08-19 880 20 7499 ALLEN SALESMAN 7698 13-08-19 1600 300 30 7521 WARD SALESMAN 7698 13-08-19 1250 500 30 7566 JONES MANAGER 7839 13-08-19 3272.5 20 7654 MARTIN SALESMAN 7698 13-08-19 1250 1400 30 7698 BLAKE MANAGER 7839 13-08-19 2850 30 7782 CLARK MANAGER 7839 13-08-19 2450 10 7788 SCOTT ANALYST 7566 13-08-19 3300 20 7839 KING PRESIDENT 13-08-19 5000 10 7844 TURNER SALESMAN 7698 13-08-19 1500 0 30 7876 ADAMS CLERK 7788 13-08-19 1210 20 EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- -------- ---------- ---------- ---------- 7900 JAMES CLERK 7698 13-08-19 950 30 7902 FORD ANALYST 7566 13-08-19 3000 30 7934 MILLER CLERK 7782 13-08-19 1300 10 14行が選択されました。 SQL>
■DELETE
-使用しないデーターを削除する。
--DELETE文法 DELETE FROM table_name WHERE 条件
--DELETE例 --社員番号7902の社員のデーターを削除 SQL> DELETE FROM emp 2 WHERE empno = 7902; 1行が削除されました。 --平均給与より小さい給与の社員削除 SQL> DELETE FROM emp 2 WHERE sal < (SELECT AVG(sal) FROM emp); 8行が削除されました。 --すべての行を削除 SQL> DELETE FROM emp; 5行が削除されました。
0 件のコメント:
コメントを投稿