17.10 - UPDATE構文(結合テーブル形式) - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-171K-JPN
Language
日本語 (日本)
{ UPDATE | UPD }
  [ with_isolated_loading ]
  { table_name_1 | correlation_name_1 }
  [ FROM from_table_spec [,...] ]
  SET set_spec [,...]
  [ WHERE condition | ALL ] [;]

構文要素

with_isolated_loading
WITH [NO] [CONCURRENT] ISOLATED LOADING
table_name_1
更新される基本テーブル、キュー テーブル、または派生テーブルの名前、またはテーブルにアクセスするためのビューの名前。
FROM句にtable_name_1の相関名を指定する場合、table_name_1ではなく、更新されるテーブルの相関名を指定しなければなりません。
例: FROM句の更新テーブルに相関名を指定するUPDATEを参照してください。
correlation_name_1
table_name_1の別名。
UPDATE文にFROM句が含まれている場合、テーブルに対し相関名を指定することはできません。
範囲変数と呼ばれることもあります。
correlation_nameオプションは、ANSI SQL:2011規格に対するTeradata拡張機能です。
FROM
更新されたテーブル、および更新されたテーブルを更新するためにフィールド値が取られるその他のテーブルのテーブル リストを導くキーワード。
FROM句を必要とするUPDATE構文を使用する場合、すべての外部テーブルの名前を句に指定しなければなりません。
UPDATE文のFROM句は、ANSI SQL:2011規格に対するTeradata拡張機能です。
from_table_spec
table_name_2 [ [AS] correlation_name ]
set_spec
column_name [.mutator_method_name] = expression
データが更新される列の名前と、更新に使用される式。
UDT列を更新する場合、ミュテーターSET句構文を使用する必要があります。ミュテーターSET句を使用したSTRUCTURED型UDTの更新を参照してください。
WHERE
この後に条件句が続くことを指定します。詳細については、WHERE句を参照してください。
search_conditionが式で呼び出されて値式を返す場合は、スカラーUDFのみを指定できます。
WHERE句を指定するには、検索対象のオブジェクトにSELECTアクセスできなければなりません。
condition
どの行の値を更新するかを決める条件式。条件は複数のテーブルを参照したり、スカラーsubqueryを指定することができます。スカラー サブクエリーUPDATEリクエストでスカラー サブクエリーを使用するためのルールを参照してください。
ALL
指定されたテーブルのすべての行が更新されることを示します。
ALLオプションは、ANSI SQLに対するTeradataの拡張機能です。
WITH [NO] ISOLATED LOADING
NOを含めないと、UPDATEを同時ロード分離操作として実行できます。
NOを含めると、UPDATEは同時ロード分離操作として実行されません。
CONCURRENT
読みやすくするために含めることができるオプションのキーワード。
table_name_2
1つ以上の基本テーブル、キュー テーブル、派生テーブル、またはビューの名前。
table_name_1table_name_2テーブル リストのメンバーでなければなりません。
table_name_2リスト オブジェクトに相関名を指定しない場合、またはtable_name_1ではなく相関名を定義する場合、table_name_2を派生テーブルにすることはできません。
table_name_2リスト メンバーがビューである場合、そのビューは更新可能でなければなりません。
データベース名を指定しない場合、システムは現行のデータベースを想定します。
correlation_name_2
table_name_2テーブル リストのメンバーのエイリアスです。範囲変数と呼ばれることもあります。
自己結合操作では、少なくとも1つのテーブルにcorrelation_nameを指定しなければなりません。
結合テーブルの構文を使ってtable_name_2テーブル リストにtable_name_1の相関名を指定する場合、table_name_1の正確な名前ではなく相関名を指定する必要があります。例: FROM句の更新テーブルに相関名を指定するUPDATEを参照してください。