使用上の注意 - Teradata Database - Teradata Vantage NewSQL Engine - HASHBAKAMP関数に関する使用上の注意

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/xzf1512079057909.ditamap
dita:ditavalPath
ja-JP/xzf1512079057909.ditaval
dita:id
B035-1145
Product Category
Software
Teradata Vantage

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

引数 Result
なし 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が持っていると、Teradata DatabaseはそのUDTに対して暗黙タイプ変換を実行します。
  • Numeric
  • 文字
  • DATE

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

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