【SQL】UPDATEでNULL値に更新する方法


このページでは、データを更新するSQLであるUPDATE文を使って、レコードの列の値をNULL値に更新する方法を紹介しております。

UPDATE文のサンプルは↓で多数紹介していますので参考にしてください。
>>【SQL】UPDATE文の書き方:サンプル多数あり

UPDATE文の基本構文

UPDATE文の基本的な構文は次の通りです。

UPDATE テーブル名 SET 列名 = 値[,列名 = 値] [WHERE 条件];

列の値をNULL値に更新する方法

レコードのカラムの値をNULL値に更新するには、SET句で設定する値にNULLを指定します。

次のSQLでは、COL1の値をNULL値で更新しています。NULLをセットしたいときには、NULLというキーワードをセットします。

UPDATE
    tab1 
SET 
    col1 = NULL
WHERE
    col4 = '001';

NULLのキーワードは小文字でも構いません。

次のSQLでは、nullと書いていますが、こちらもNULL値で更新されます。

UPDATE
    tab1 
SET 
    col1 = null
WHERE
    col4 = '001';

NULL値のレコードを更新する方法

NULL値の更新と間違えやすいので記述しておきます。

NULL値のレコードを抽出したい場合は=ではなく、ISを使います。

次のSQLは、COL4がNULL値のレコードを対象にしています。WHERE句で条件として指定する場合は、「IS NULL」を使います。

UPDATE
    tab1 
SET 
    col1 = 'test'
WHERE
    col4 IS NULL;

NULL値ではないレコードを更新する方法

NULL値ではないレコードを抽出するときは!=ではなく、IS NOT NULLを使います。

次のSQLは、COL4がNULL値ではないレコードを対象にしています。WHERE句で条件として指定する場合は、「IS NOT NULL」を使います。

UPDATE
    tab1 
SET 
    col1 = 'test'
WHERE
    col4 IS NOT NULL;

まとめ

UPDATE文で、列の値をNULL値に更新するには、キーワードのNULLを指定します。

NULL値のデータを選択したい場合には、WHERE句でIS NULLやIS NOT NULLを使います。

この他にも、UPDATE文の様々な書き方を解説しております。
詳しくは「【SQL】UPDATE文の書き方:サンプル多数あり」で解説しているのでぜひ参考にしてください。