标签:存储 函数 GET -- WHEN SDATE CHAR DB2 DOT
创建fuction:根据年份和周数,获取到当周开始日期
-- Generate SQL -- Version: V7R1M0 100423 -- Generated on: 03/29/22 12:08:46 -- Relational Database: S685D13X -- Standards Option: DB2 for i SET PATH "QSYS","QSYS2","SYSPROC","SYSIBMADM","KT" ; CREATE FUNCTION KTGL.GET_DOT_SDATE ( INYY NUMERIC(4, 0) , INWW NUMERIC(2, 0) ) RETURNS CHAR(10) LANGUAGE SQL SPECIFIC KTGL.GET_DOT_SDATE NOT DETERMINISTIC READS SQL DATA CALLED ON NULL INPUT SET OPTION ALWBLK = *ALLREAD , ALWCPYDTA = *OPTIMIZE , COMMIT = *NONE , DECRESULT = (31, 31, 00) , DFTRDBCOL = *NONE , DYNDFTCOL = *NO , DYNUSRPRF = *USER , SRTSEQ = *HEX BEGIN ---------------------------------------------------------------------------- -- ---------------------------------------------------------------------------- ------------------------------------------------------------- -- WORK AREAS ------------------------------------------------------------- DECLARE W_RESULT CHAR ( 10 ) ; -------------------------------------------- -- SELCODE DEFINE -------------------------------------------- SET W_RESULT = ( SELECT CHAR ( DATE + ( WEEK + DAY ) DAY ) AS DATE FROM ( SELECT DATE ( TIMESTAMP_FORMAT ( CHAR ( INYY || '0101' ) , 'YYYYMMDD' ) ) DATE , ( CAST ( INWW AS INTEGER ) - 1 ) * 7 WEEK , CASE DAYNAME ( TIMESTAMP_FORMAT ( CHAR ( INYY || '0101' ) , 'YYYYMMDD' ) ) WHEN '星期一' THEN 0 WHEN '星期二' THEN - 1 WHEN '星期三' THEN - 2 WHEN '星期四' THEN - 3 WHEN '星期五' THEN 3 WHEN '星期六' THEN 2 WHEN '星期天' THEN 1 END AS DAY FROM SYSIBM . SYSDUMMY1 ) A ) ; RETURN W_RESULT ; END ; GRANT ALTER , EXECUTE ON SPECIFIC FUNCTION KTGL.GET_DOT_SDATE TO QUSER ;
使用function
SELECT KTGL.GET_DOT_SDATE(2021,01) FROM SYSIBM.SYSDUMMY1 ; --DB虚拟表
标签:存储,函数,GET,--,WHEN,SDATE,CHAR,DB2,DOT 来源: https://www.cnblogs.com/shanghaojia0923/p/16071233.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。