デフォルトの引数について
引数 | 結果 |
---|---|
なし | HASHAMP ()は、システム内のAMPの最大数より1少ないINTEGER値を戻します。 |
expressionが指定されない | 連続マップの場合: 関数は、指定した、またはデフォルトの連続マップの最大AMP数を表わすINTEGERを返します。AMPゼロから始まる連続マップの場合、結果に1を追加すると、連続マップ内のAMPの総数が得られます。スパース マップの場合: スパース マップに対してExpressionを指定する必要があります。 |
expressionが指定される | この関数は、指定した、またはデフォルトのマップに基づいて、expressionで指定したハッシュ バケット番号に対応するプライマリAMPのIDを返します。 |
デフォルト マップについて
デフォルト マップを特定するため、システムは以下を順番に評価し、見つかった最初のマップを使用します。
- ユーザー プロファイル。
- ユーザー
- システム
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>を参照してください。
HASHAMPを含め、システム演算子および関数用のUDTの暗黙タイプ変換は、ANSI SQL規格のTeradata拡張機能です。この拡張を無効にするには、DBS制御レコードのDisableUDTImplCastForSysFuncOpフィールドをTRUEに設定します。