17.10 - 使用上の注意 - 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-1145-171K-JPN
Language
日本語 (日本)

デフォルトの引数について

引数 結果
なし HASHBAKAMP ()は、システム内のAMPの最大数より1少ないINTEGER値を戻します。
expressionが指定されない 連続マップの場合: 関数は、指定した、またはデフォルトの連続マップの最大フォールバックAMP数を表わすINTEGERを返します。AMPゼロから始まる連続マップの場合、結果に1を追加すると、連続マップ内のAMPの総数が得られます。スパース マップの場合: スパース マップに対してExpressionを指定する必要があります。
expressionが指定される この関数は、指定した、またはデフォルトのマップに基づいて、expressionで指定したハッシュ バケット番号に対応するフォールバックAMPのIDを返します。

デフォルト マップについて

デフォルト マップを特定するため、システムは以下を順番に評価し、見つかった最初のマップを使用します。

  1. ユーザー プロファイル
  2. ユーザー
  3. システム

Expressionについて

expression引数は、値の有効範囲がシステムのハッシュ バケット サイズによって異なる場合は、INTEGERデータ型と評価されなければなりません。

ハッシュ バケット サイズ expressionの値の範囲
16ビット 0~65,535
20ビット 0~1,048,575

システムのハッシュ バケット サイズの設定方法については、<Teradata Vantage™ - データベース ユーティリティ、B035-1102>の「DBS制御ユーティリティ」を参照してください。

expressionがINTEGERに暗黙変換できない場合は、エラーが戻されます。

expressionの結果がUDTになる場合に、UDTと以下のいずれかの事前定義型の間でキャストする暗黙CASTをUDTが持っていると、VantageはそのUDTに対して暗黙タイプ変換を実行します。
  • Numeric
  • 文字
  • DATE

UDT用の暗黙CASTを定義するには、CREATE CAST文を使用し、AS ASSIGNMENT節を指定します。詳細は、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。

HASHBAKAMPを含め、システム演算子および関数用のUDTの暗黙の型変換は、ANSI SQL標準のTeradata拡張機能です。この拡張を無効にするには、DBS制御レコードのDisableUDTImplCastForSysFuncOpフィールドをTRUEに設定します。