标量函数
标量函数可用于任何可以使用表达式的场合。 对聚合函数的使用限制不适用于标量函数,因为标量函数仅适用于单个参数值集,而不适用于多个值集。 标量函数的参数可以是函数。 然而,当表达式或聚合函数在标量函数中使用时,适用于表达式和聚合函数使用的限制同样适用。 例如,标量函数的参数只能是一个聚合函数,前提是使用标量函数的上下文中允许使用聚合函数。
如果标量函数的参数是带有字段过程的列中的字符串,则函数将应用于解码后的值,且函数结果不会继承字段过程。
示例 :以下SELECT语句要求获取示例表DSN8C10.EMP 中部门 D11 中每位员工的员工编号、姓氏和年龄。 为了获得年龄,标量函数YEAR被应用到表达式中:
CURRENT DATE - BIRTHDATE
在DSN8C10.EMP的每一行中,员工所在的部门为 D11: SELECT EMPNO, LASTNAME, YEAR(CURRENT DATE - BIRTHDATE)
FROM DSN8C10.EMP
WHERE WORKDEPT = 'D11';