引数の値 | 返されるZEROIFNULL値 |
---|---|
非null | 数値引数の値。 |
nullまたはゼロ STRUCTURED型UDT列の値がNULLになるのは、NULLに設定された属性をSTRUCTURED型UDTインスタンスが持っている場合ではなく、その列に明示的にNULLを入れた場合だけです。
|
ゼロ |
引数は、数値でない場合は暗黙のタイプ変換ルールに従って値が数値に変換されます。引数を変換できない場合は、エラーが戻されます。詳細は、Teradata Vantage™データ タイプおよびリテラル、B035-1143を参照してください。
argは文字列の場合は、文字列がFLOATデータ型の数値に変換されます。
argがUDTである場合、以下のルールが適用されます。
- 以下のいずれかの事前定義型に対する暗黙CASTがUDTになければなりません。
- Numeric
- Character
- DATE
- Interval
UDT用の暗黙CASTを定義するには、CREATE CAST文を使用し、AS ASSIGNMENT節を指定します。詳細は、<Teradata Vantage™ SQLデータ定義言語 - 構文規則および例、B035-1144>を参照してください。
- ZEROIFNULLを含め、システム演算子および関数用のUDTの暗黙の型変換は、ANSI SQL規格のTeradata拡張機能です。この拡張を無効にするには、DBS制御レコードのDisableUDTImplCastForSysFuncOpフィールドをTRUEに設定します。詳細は、<Teradata Vantage™ - データベース ユーティリティ、B035-1102>を参照してください。
次のタイプの引数にZEROIFNULLを適用することはできません。
- BYTEまたはVARBYTE
- BLOBまたはCLOB
- CHARACTERまたはVARCHAR (サーバーの文字セットがGRAPHICの場合)