WHERE search_condition - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
ft:locale
ja-JP
ft:lastEdition
2021-09-23
dita:mapPath
ja-JP/spp1591731285373.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

WHERE句はスパース結合インデックスの作成に役立ちます。

WHERE句の詳細については、<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照してください。

search_condition
TRUEとして評価されないSELECT句の問合わせからすべての行を削除する条件式。
UDT列または、以下を除く少なくとも1つの列を参照する式に基づいた式を作成できます: 集約関数またはOLAP関数を呼び出す式、UDF式、またはDEFAULTおよびPARTITIONなどの明示的に禁止されたビルトイン関数またはキーワード。DEFAULT組み込み関数の詳細については、<Teradata Vantage™ - SQL関数、式、および述部、B035-1145>を参照してください。PARTITIONキーワードの詳細については、<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照してください。
式は別名で指定する必要があります。 そうでない場合には、エラーが戻されます。
AND論理演算子を使用して、複数の結合条件を接続する必要があります。
結合条件に使用される列のデータ型は、同じドメインのものであることが必要です。これは、明示的なものにせよ暗黙的なものにせよ、データ型の変換は許可されていないからです。
スパース結合インデックス定義の検索条件で、ROWIDキーワードを指定することはできません。
Vantage V2R6.2以前に作成された、定義にキーワードROWIDを含むすべての結合インデックスを削除してから、現在有効な構文を使用してそれらを再作成する必要があります。
UDT列に結合条件を指定すると、指定されたテーブルは等価条件で結合される必要があります。そうでない場合、Vantageはリクエスト元にエラーを返します。
WHERE句検索条件における不等価演算子の指定には、次のルールが適用されます。
  • 同じテーブルの列間の不等条件は常に有効です。
  • 別々のテーブルの列間の不等条件は、それらが少なくとも1つの等価条件と一緒にANDで指定されている場合にのみサポートされます。
  • ドメインの整合性を確保するために、不等条件は同じデータ型を持つ列にのみ指定できます。
  • 複数の結合条件を指定し、等価の結合条件と非等価の結合条件をAND論理演算子を使って接続する場合は、非等価の演算子を使って結合条件を指定することしかできません。
  • 2つのテーブル間に複数の結合条件を指定し、AND論理演算子を使用して、式または列式で指定した結合条件と2つのテーブルの列間の等価結合条件をつなげると、2つのテーブル間の等価結合または不等価結合条件を式に基づいて指定できます。
  • 以下の不等条件の比較演算子のみが有効です。

    <

    <=

    >

    >=