17.10 - ソースの定義にサブクエリーを使用するAS … WITH NO DATAに関するルール - 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-1184-171K-JPN
Language
日本語 (日本)
CREATE TABLE AS … WITH NO DATAに関する一般ルールで説明されている一般ルールに加えて、コピー操作で使用するソース テーブルを定義するためにサブクエリーを指定doesAS … WITH NO DATA句にのみ、以下に示す一覧の固有のルールが適用されます。
  • Subquery で指定された列セットに固有性制約がなく、ターゲット テーブルがSET テーブルである場合は、Vantageはゼロ統計をコピーします。
  • 以下のいずれかの句、演算子、条件、または関数の種類がターゲット テーブルの定義で指定されている場合、Vantageはゼロ統計をコピーします。
    • WHERE句
    • GROUP BY句
    • HAVING句
    • QUALIFY句
    • DISTINCT演算子
    • TOP n演算子
    • 内部結合
    • 外部結合
    • 集約関数
    • OLAP関数
  • 選択リストで指定したインデックス列の相対順序が、ソース テーブルのインデックス列の順序と異なる場合でも、Vantageはゼロ複数列統計およびゼロインデックス統計をコピーします。
  • サブクエリーで複数のテーブルを参照する場合、Vantageはゼロ統計をコピーしません
  • 列またはインデックスがターゲット テーブル定義で変更されている場合、Vantageは列またはインデックスのゼロ統計をコピーしません。これは、列またはインデックス セットがターゲット テーブル定義で変更されるときの、統計のコピーに関するルールに違反するためです。
  • インデックス列セットのメンバーがターゲット テーブル定義で変更されている場合、Vantageは複合インデックス列のゼロ統計をコピーしません。これは、列またはインデックス セットがターゲット テーブル定義で変更されるときの、統計のコピーに関するルールに違反するためです。

    列またはインデックスに対する変更例としては、CASE式、算術式、または変換属性の指定などがあります。

  • 単一列か複合列セットに関係なく、Vantageはシステム派生PARTITION列のゼロ統計をコピーしません
  • Vantageは、サブクエリーで複合ビューまたは複合派生テーブルから作成されたターゲット テーブル列のゼロ統計をコピーしません
  • 複数列統計または複合インデックス列統計を構成する列がターゲット テーブルにコピーされない場合、Vantageは複数列ゼロ統計または複合インデックス ゼロ統計をコピーしません
  • 列または単一列インデックスがターゲット テーブルにコピーされない場合、Vantageは単一列ゼロ統計または単一列インデックス ゼロ統計をコピーしません