DELETE ステートメントは、表から 1 行または複数の行を削除します。
呼び出し
このステートメントは、アプリケーション・プログラム内で DB2 CLI 関数を用いて使用することができます。 また、CLP を介して出すこともできます。
構文
>>-DELETE FROM--表名--+---------------------+------------------>< '-WHERE--| 検索条件 |-' 検索条件: .--------------------------------------. V | |----+----------------------------------+-+---------------------| '-+-AND-+--+-----+--+-| 述部 |---+-' '-OR--' '-NOT-' '-(検索条件)-' 述部: |--+-| 基本述部 |--+--------------------------------------------| +-| IN 述部 |---+ +-| LIKE 述部 |-+ '-| NULL 述部 |-' 基本述部: |--| 式 |--+-=--+--| 式 |---------------------------------------| +-<>-+ +-<--+ +->--+ +-<=-+ +->=-+ '-||-' IN 述部: .-,------------. V | |--| 式 |--+-----+--IN----(--| 式 |--)-+------------------------| '-NOT-' LIKE 述部: |--| 式 |--+-----+--LIKE--| 式 |--------------------------------| '-NOT-' NULL 述部: (1) |--| 式 |-------IS--+-----+--NULL-------------------------------| '-NOT-' 式: .-演算子--------------------. V | |----+---+--+-リテラル-------+-+--------------------------------| +-+-+ +-列名-----------+ '---' +-(式)-----------+ +-特殊レジスター-+ '-関数-----------' 演算子: |--+-/-+--------------------------------------------------------| +-*-+ +-+-+ '---'
注:
説明
検索条件 の結果は、指定した各述部の結果に対して、指定した 論理演算子 (AND、OR、NOT) を適用することによって得られます。 述部は 2 つの値を比較します。論理演算子を指定しなければ、 検索条件の結果は、指定した述部の結果となります。
括弧内の検索条件が先に評価されます。評価の順序を括弧で指定していない場合、NOT が AND の前に 適用され、AND が OR の前に適用されます。同じ順序レベルの演算子が評価される順序は、検索条件の最適化が できるように未定義となっています。
表の各行に検索条件 が適用され、検索条件 の 結果が真となった行が削除されます。
検索条件の中の各列名 は、表の列を示すものでなければなりません。
BLOB(n)、DATE、TIME、および TIMESTAMP データ・タイプに対する算術演算はサポートされません。
規則
なし。
例
従業員番号 (EMPNO) 003002 を EMPLOYEE 表から削除します。
DELETE FROM EMPLOYEE WHERE EMPNO = '003002'
関連した解説