1 つの式で 1 つの値を指定します。
これは 1 つの定数または 1 つの列名だけで構成される単純値のこともあれば、より複雑な値のこともあります。
「式ビルダー」ウィザードを使用して、複雑な式または副照会を作成できます。
「式ビルダー」ウィザードを使用して、以下のタイプの式を作成できます。
- 関数
- CASE - 検索または単純
- CAST
- 定数
- 副照会
- 演算子によって作成された式
- 関数
- 関数は、関数名とそれに続く一対の括弧で示されて、その括弧の中には 0 かそれ以上の数の引数が指定されます。
関数は値を戻します。
関数は、列関数、スカラー関数、行関数、または表関数 に分類されます。
- 列関数の引数は、同種の値の集合 (列) です。
この関数は単数値 (NULL も可) を戻し、SQL ステートメント内で式を使用できる場所に指定することが可能です。
- スカラー関数の引数は個別のスカラー値であり、それらは異なるタイプであることが可能です。
この関数は単数値 (NULL も可) を戻し、SQL ステートメント内で式を使用できる場所であればどこにでも指定できます。
- 行関数の引数は構造化タイプです。
この関数は組み込みデータ・タイプの行を戻し、構造化タイプの変換関数としてのみ指定できます。
- 表関数の引数は個別のスカラー値であり、それらは異なるタイプであることが可能です。
この関数は表を戻し、SELECT ステートメントの FROM 文節内にのみ指定できます。
- CASE - 検索または単純
- CASE 式では、1 つ以上の条件の評価に基づいて式を選択できます。
CASE 式には、検索または単純のどちらかのタイプの when 文節が 1 つ以上含まれます。
検索 CASE 式では、CASE キーワードの後に条件はなく、
それぞれの when 文節は評価対象となる検索条件 (i<8 など) です。
単純 CASE 式では、CASE キーワードの後に条件があります。
この式は、各 when 文節に続く式と比較されます。
CASE 式の値は、CASE 式に含まれる真と評価された最初の when 文節に続く結果式 の値になります。
when 文節の評価が真ではない場合、else 文節が CASE 式の値を決めます。
- CAST
- CAST 式は、データ・タイプのインスタンス (起点) を
異なるデータ・タイプのインスタンス (ターゲット) に変換するために使用される関数です。
CAST 関数の書式は、CAST( expr AS datatype) です。
式 expr の結果は、タイプ datatype に変換されます。
たとえば、CAST (XMLTEST.EMPLOYEE.SALARY AS INTEGER) は、列 SALARY 内の値を INTEGER タイプに変換します。
注: SQL ビルダーでの SQL サポートは、データベース・ベンダーが提供するサポートのレベルに依存しています。
CAST 式のサポートは、以下のとおりです。
- DB2® - CAST 式 AS 式
- MS SQL Server - CAST 式 AS データ・タイプ
- Oracle - TRANSLATE はサポートされません。
- 定数
- 定数は値を指定します。
定数は、文字列または数値であることができます。
数値定数は、整数、浮動小数点、または 10 進数であることができます。
文字列定数は、文字ストリング定数、16 進定数、またはホスト変数名であることができます。
ホスト変数名は、名前とその前のコロン (:var など) で表されて、ステートメントの実行時に値に置き換わります。
- 副照会
- 副照会は、別の SQL ステートメント内にネストされた SELECT、WITH、または FULLSELECT ステートメントです。
式の値は副照会の結果です。
- 演算子によって作成された式
- 式は、演算子を列や式に適用することによって作成できます。
たとえば、x+y となり、x は列で y は式です。
SQL 式について詳しくは、データベース製品の文書を参照してください。