UPDATEは、テーブルに存在する行を更新するコマンドであり、下記の基本構文に従って実行されます。
- UPDATE基本構文
-
UPDATE テーブル名
SET 列名1 = 値1, 列名2 = 値2, …
WHERE 条件式
WHERE句に指定された抽出条件に該当する行の列名1を値1に、列名2を値2に、…という具合に更新します。値には、定数、NULL、集合関数、計算式等を指定します。
WHERE句を書かない場合は、全行が更新対象になります。この点は十分に注意しましょう。
また更新可能なビューであれば、上記のテーブル名に当該ビュー名を指定できます。
UPDATE文を使って、id(社員番号)が「0001」のage(年齢)を1つ加算する例を以下に示します。
UPDATE Staff SET age = age + 1 WHERE id = '0001';
NULLで更新する
UPDATE文によって、列をNULLで更新することもできます。(NULLで更新することを「NULLクリア」と呼ばれます。)
UPDATE Staff SET hire_date = NULL WHERE id = '0001';
このようにNULLをひとつの値として使うことができます。ただし、NULLクリアが可能なのはNOT NULL制約や主キー制約のついていない列に限られます。