例: WHERE句の相関サブクエリーを使ったUPDATE - Teradata Database - Teradata Vantage NewSQL Engine - 例: WHERE句の相関サブクエリーを使ったUPDATE

Teradata Vantage™ SQLデータ操作言語

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/fbo1512081269404.ditamap
dita:ditavalPath
ja-JP/fbo1512081269404.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

非相関サブクエリーにするには、サブクエリーを変更して、参照するすべてのテーブルを内部のFROM句に含めます。

     UPDATE publisher
     SET pubnum = NULL
     WHERE 0 = (SELECT COUNT(*)
                FROM book, publisher
                WHERE book.pubnum = publisher.pubnum);

リクエストには相関subqueryが含まれておらず、subquery内の条件にはローカルに定義された参照があります。カウントは1回で確定され、値がゼロにはならないため、行は削除されません。

相関サブクエリーと非相関サブクエリーの追加例については、相関subqueryを参照してください。