次に、TeradataがサポートするTO_NUMBER構文の例を示します。いずれの例も、OracleがサポートするTO_NUMBER構文とは異なります。この関数には次の特徴があります。
- 閉じ山括弧のないPR書式構成要素をサポートしません。この例では、数値が正しい書式ではないため、NULLが返されます。
SELECT TO_NUMBER ('<123', '999PR') - PR書式構成要素を使用し、数値が正数である場合には、数値の最後にスペースを挿入できます。この例では、123が返されます。
SELECT TO_NUMBER (' 123 ', '999PR') - 複数桁を科学表記法で指定できます。この例では、12000が返されます。
SELECT TO_NUMBER ('12E3', '99EEEE') - 科学表記法の整数部分でカンマを使用できます。この例では、1234000が返されます。
SELECT TO_NUMBER ('1,234E3', '9,999EEEE') - 書式に小数がないときでも、引数が2つあるときには、カンマを検証します。この例では、数値が正しい書式ではないため、NULLが返されます。
SELECT TO_NUMBER ('1234', '9,999') - 空の文字列をそれ以外の文字列と同じように扱います。この例では、書式が有効でないため、NULLではなくエラーが返されます。
SELECT TO_NUMBER ('', 'BAD Format') - ピリオド(.)およびカンマ(,)と、DおよびGを同じ書式文字列で使用できます。この例では、1234.99が返されます。
SELECT TO_NUMBER ('1,234.99', '9,999D99')