UPDATE 表名 ... どの表を更新するのか SET 列名 = 値 ... どの列になんの値を設定するのか WHERE ... 選択条件 値には式や副照会を指定できますTop
UPDATE employee SET sal = sal * 1.2 DB20000I SQL コマンドが正常に終了しました。
SELECT * FROM employee ORDER BY emp_id;結果表
EMP_ID DEPT_ID EMP_NAME BIRTHDAY HIREDATE SEX SAL ----------- ----------- -------------------- ---------- ---------- ----------- ----------- 1 10 羽生 章洋 1978-10-10 1990-12-17 1 960.00 2 10 釜本 喜美子 1975-05-20 1991-02-20 2 1920.00 3 20 安部 弘江 1974-06-01 1991-02-22 2 1500.00 4 20 松村 秀和 1970-09-13 1991-04-02 1 3570.00 5 30 萩原 恵理子 1985-03-16 2008-09-28 2 1500.00 6 30 岡田 奈緒子 1983-12-24 2007-05-01 2 3420.00 7 30 井上 尚志 1971-10-17 2000-11-15 1 2940.00 8 40 西口 麻衣子 1986-12-14 2008-12-03 2 3600.00 9 40 滝本 順三 1978-04-02 2004-12-18 1 6000.00 10 40 工藤 新一 1990-02-10 1999-04-01 1 1800.00 11 90 毛利光太郎 1970-12-31 1990-04-01 1 9600.00 11 レコードが選択されました。
UPDATE employee SET sal = sal - 1000 WHERE sal >= 5000
SELECT * FROM employee ORDER BY emp_id;結果表
EMP_ID DEPT_ID EMP_NAME BIRTHDAY HIREDATE SEX SAL ----------- ----------- -------------------- ---------- ---------- ----------- ----------- 1 10 羽生 章洋 1978-10-10 1990-12-17 1 960.00 2 10 釜本 喜美子 1975-05-20 1991-02-20 2 1920.00 3 20 安部 弘江 1974-06-01 1991-02-22 2 1500.00 4 20 松村 秀和 1970-09-13 1991-04-02 1 3570.00 5 30 萩原 恵理子 1985-03-16 2008-09-28 2 1500.00 6 30 岡田 奈緒子 1983-12-24 2007-05-01 2 3420.00 7 30 井上 尚志 1971-10-17 2000-11-15 1 2940.00 8 40 西口 麻衣子 1986-12-14 2008-12-03 2 3600.00 9 40 滝本 順三 1978-04-02 2004-12-18 1 5000.00 10 40 工藤 新一 1990-02-10 1999-04-01 1 1800.00 11 90 毛利光太郎 1970-12-31 1990-04-01 1 8600.00 11 レコードが選択されました。
UPDATE employee SET sal = (SELECT avg(sal) FROM employee) WHERE dept_id = 40 ;
SELECT * FROM employee ORDER BY emp_id;結果表
EMP_ID DEPT_ID EMP_NAME BIRTHDAY HIREDATE SEX SAL ----------- ----------- -------------------- ---------- ---------- ----------- ----------- 1 10 羽生 章洋 1978-10-10 1990-12-17 1 960.00 2 10 釜本 喜美子 1975-05-20 1991-02-20 2 1920.00 3 20 安部 弘江 1974-06-01 1991-02-22 2 1500.00 4 20 松村 秀和 1970-09-13 1991-04-02 1 3570.00 5 30 萩原 恵理子 1985-03-16 2008-09-28 2 1500.00 6 30 岡田 奈緒子 1983-12-24 2007-05-01 2 3420.00 7 30 井上 尚志 1971-10-17 2000-11-15 1 2940.00 8 40 西口 麻衣子 1986-12-14 2008-12-03 2 3164.54 9 40 滝本 順三 1978-04-02 2004-12-18 1 3164.54 10 40 工藤 新一 1990-02-10 1999-04-01 1 3164.54 11 90 毛利光太郎 1970-12-31 1990-04-01 1 8600.00 11 レコードが選択されました。
UPDATE employee SETbirthday = NULL
SELECT * FROM employee ORDER BY emp_id;結果表
EMP_ID DEPT_ID EMP_NAME BIRTHDAY HIREDATE SEX SAL ----------- ----------- -------------------- ---------- ---------- ----------- ----------- 1 10 羽生 章洋 - 1990-12-17 1 960.00 2 10 釜本 喜美子 - 1991-02-20 2 1920.00 3 20 安部 弘江 - 1991-02-22 2 1500.00 4 20 松村 秀和 - 1991-04-02 1 3570.00 5 30 萩原 恵理子 - 2008-09-28 2 1500.00 6 30 岡田 奈緒子 - 2007-05-01 2 3420.00 7 30 井上 尚志 - 2000-11-15 1 2940.00 8 40 西口 麻衣子 - 2008-12-03 2 3164.54 9 40 滝本 順三 - 2004-12-18 1 3164.54 10 40 工藤 新一 - 1999-04-01 1 3164.54 11 90 毛利光太郎 - 1990-04-01 1 8600.00 11 レコードが選択されました。
=> UPDATE ... DB20000I SQL コマンドが正常に終了しました。 SELECT * FROM department ORDER BY dept_id; DEPT_ID DEPT_NAME LOC MGR_ID ADEPT_ID ----------- -------------------- -------------------- ----------- ----------- 10 営業部 東京都千代田区 1 30 20 開発部 神奈川県川崎市 3 30 30 企画部 神奈川県川崎市 5 40 40 管理部 東京都台東区 8 40 50 製造部 東京都大田区 - 50 5 レコードが選択されました。
=> UPDATE ... DB20000I SQL コマンドが正常に終了しました。 SELECT * FROM department ORDER BY dept_id; DEPT_ID DEPT_NAME LOC MGR_ID ADEPT_ID ----------- -------------------- -------------------- ----------- ----------- 10 営業部 東京都千代田区 1 30 20 開発部 神奈川県川崎市 3 30 30 企画部 神奈川県川崎市 1 40 40 管理部 東京都台東区 1 40 50 製造部 東京都大田区 - 50 5 レコードが選択されました。
>>-UPDATE----+-table-name-------------------+-------------------> +-view-name--------------------+ >-----SET--| assignment-clause |-------------------------------> >-----+--------------------------+----------------------------->< '-WHERE--search-condition--' assignment-clause .-,--------------------------------------------------------------------------------------------------. V | |-------+-column-name--+--------------------------+---=--+-expression-+-------------------------------+--+-> | | .--------------------. | +-NULL-------+ | | | V | | '-DEFAULT----' | | '----..attribute-name---+--' | | .-,-------------------------------------------. .-,---------------. | | V | V | | '-(-----column-name--+--------------------------+--+---)--=--(--+----+-expression-+--+-+---)--' | .--------------------. | | +-NULL-------+ | | V | | | '-DEFAULT----' | '----..attribute-name---+--' '-row-fullselect-------' >---------------------------------------------------------------|(*)構文は簡単のため、単純化してます。 Top