`
jiaoronggui
  • 浏览: 1302314 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
B7c2eb31-a8ea-3973-a517-d00141f39b89
项目管理软件-redmin...
浏览量:115176
4a63e153-250f-30f6-a051-97cfc67cb3d3
IT职业规划
浏览量:197616
社区版块
存档分类
最新评论

DB2自定义函数初识

    博客分类:
  • DB2
阅读更多

 

1、创建简单的自定义函数

CREATE function ca (r DOUBLE)
            RETURNS DOUBLE
            LANGUAGE SQL
            CONTAINS SQL
            NO EXTERNAL ACTION
            DETERMINISTIC
            RETURN 3.14159 * (r * r);

 

2、使用函数

SELECT ca(96.8) AS area FROM sysibm.sysdummy1
            AREA
            ------------------------
            +2.94374522816000E+004
            1 record(s) selected.

 

 

3、创建返回table的自定义函数

CREATE FUNCTION jobemployees (job VARCHAR(8))
            RETURNS TABLE (
            empno CHAR(6),
            firstname VARCHAR(12),
            lastname VARCHAR(15)
            )
            LANGUAGE SQL
            READS SQL DATA
            NO EXTERNAL ACTION
            DETERMINISTIC
            RETURN
            SELECT empno, firstnme, lastname
            FROM employee
            WHERE employee.job = jobemployees.job;

 

4、使用

SELECT * FROM TABLE(jobemployees('CLERK')) AS clerk
            EMPNO  FIRSTNAME    LASTNAME
            ------ ------------ ---------------
            000120 SEAN         O'CONNELL
            000230 JAMES        JEFFERSON
            000240 SALVATORE    MARINO
            000250 DANIEL       SMITH
            000260 SYBIL        JOHNSON
            000270 MARIA        PEREZ
            6 record(s) selected.

 

0
6
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics