スカラー関数

スカラー関数は呼び出されるたびに、オプションで引数を受け入れて、単一のスカラー値を返します。

スカラー関数は、式を使用できる個所であればどこにでも使用することができます。 ただし、式と集約関数の使用に適用される制約事項は、 スカラー関数の中で式または集約関数を使用する場合にも適用されます。 例えば、スカラー関数の引数を集約関数にすることができるのは、 スカラー関数が使用されるコンテキストで集約関数の使用が許されている場合だけです。

集約関数の使用法に関する制約事項がスカラー関数に適用されないのは、 スカラー関数が、値の集合ではなく、単一の値を対象にするからです。

次の SELECT ステートメントの結果には、 部門 D01 の従業員の数と同じ数の行が入っています。
   SELECT EMPNO, LASTNAME, YEAR(CURRENT DATE - BRTHDATE)
     FROM EMPLOYEE
     WHERE WORKDEPT = 'D01'

スカラー関数は、スキーマ名 (例えば SYSIBM.CHAR(123)) で修飾することができます。

Unicode データベースでは、文字ストリングまたは GRAPHIC ストリングを受け入れるスカラー関数はすべて、 変換をサポートされている任意のストリング・タイプを受け入れます。