您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > db2日期和时间常用汇总
db2日期和时间常用汇总db2日期和时间常用汇总1、db2可以通过SYSIBM.SYSDUMMY1、SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值。SELECT'HELLODB2'FROMSYSIBM.SYSDUMMY1;--HELLODB2SELECT'HELLODB2'FROMSYSIBM.DUAL;--HELLODB2VALUES'HELLODB2';--HELLODB22、CURRENTDATE获取当前日期;CURRENTTIME获取当前时间;CURRENTTIMESTAMP获取当前时间戳(含年、月、日、时、分、秒)。VALUESCURRENTDATE--2012/5/250:00:00;VALUESCURRENTTIME--20:48:53;VALUESCURRENTTIMESTAMP--2012/5/2520:49:12;3、YEAR()获取年;MONTH()获取月;DAY()获取日;HOUR()获取小时;MINUTE()获取分钟;SECOND()获取秒;DATE()获取日期;TIME()获取时间;TIMESTAMP()获取时间戳。以上函数参数可以是日期时间类型,也可以为日期时间格式的字符串。VALUESYEAR(CURRENTTIMESTAMP);/*2012*/VALUESYEAR('2012-05-2521:18:12');/*2012*/VALUESMONTH(CURRENTTIMESTAMP);/*5*/VALUESMONTH('2012-05-2521:18:12');/*5*/VALUESDAY(CURRENTTIMESTAMP);/*25*/VALUESDAY('2012-05-2521:18:12');/*25*/VALUESHOUR(CURRENTTIMESTAMP);/*21*/VALUESHOUR('2012-05-2521:18:12');/*21*/VALUESMINUTE(CURRENTTIMESTAMP);/*18*/VALUESMINUTE('2012-05-2521:18:12');/*18*/VALUESSECOND(CURRENTTIMESTAMP);/*12*/VALUESSECOND('2012-05-2521:18:12');/*12*/VALUESDATE(CURRENTTIMESTAMP);/*2012/5/250:00:00*/VALUESDATE('2012-05-2521:18:12');/*2012/5/250:00:00*/VALUESTIME(CURRENTTIMESTAMP);/*21:18:12*/VALUESTIME('2012-05-2521:18:12');/*21:18:12*/VALUESTIMESTAMP(CURRENTTIMESTAMP);/*2012/5/2521:18:12*/VALUESTIMESTAMP('2012-05-2521:18:12');/*2012/5/2521:18:12*/4、db2时间可以直接加减带单位的时间长度。VALUESTIMESTAMP('2012-5-2521:18:12')+1YEAR;--2013/5/2521:18:12VALUESTIMESTAMP('2012-5-2521:18:12')+1MONTH;--2012/6/2521:18:12VALUESTIMESTAMP('2012-5-2521:18:12')+1DAY;--2012/5/2621:18:12VALUESTIMESTAMP('2012-5-2521:18:12')+1HOUR;--2012/5/2522:18:12VALUESTIMESTAMP('2012-5-2521:18:12')+1MINUTE;--2012/5/2521:19:12VALUESTIMESTAMP('2012-5-2521:18:12')+1SECOND;--2012/5/2521:18:13VALUESTIMESTAMP('2012-5-2521:18:12')+1YEAR+1MONTH+1DAY+1HOUR+1MINUTE+1SECOND;--2013/6/2622:19:13VALUESTIMESTAMP('2012-5-2521:18:12')-1YEAR-1MONTH-1DAY-1HOUR-1MINUTE-1SECOND;--2011/4/2420:17:115、通过days()可以获取两个时间相差天数。VALUESDAYS(CURRENTDATE)-DAYS(CURRENTDATE-1000DAY);--10006、TO_CHAR()把时间转换成指定格式的字符串类型(db2较低版本不支持)。“YYYY-MM-DDHH:MI:SS”十二小时制;“YYYY-MM-DDHH24:MI:SS”二十四小时制。(“YYYY-MM-DDhh:mm:ss”不会报错,但是mm值取的是月的值。)SELECTTO_CHAR(TIMESTAMP('2012-5-2521:18:12'),'YYYY-MM-DD')FROMSYSIBM.DUAL;--2012-05-25SELECTTO_CHAR(TIMESTAMP('2012-5-2521:18:12'),'YYYY-MM-DDHH:MI:SS')FROMSYSIBM.DUAL;--2012-05-2509:18:12SELECTTO_CHAR(TIMESTAMP('2012-5-2521:18:12'),'YYYY-MM-DDHH24:MI:SS')FROMSYSIBM.DUAL;--2012-05-2521:18:12(SELECTTO_CHAR(TIMESTAMP('2012-5-2521:18:12'),'YYYY-MM-DDHH24:MM:SS')FROMSYSIBM.DUAL;--2012-05-2521:05:12)7、DAYNAME()返回指定日期的星期名,该星期名是由首字符大写、其他字符小写组成的英文名。valuesDAYNAME(currenttimestamp)--Friday(当天为星期五)8、DAYOFWEEK()返回参数中的星期几,用范围在1-7的整数值表示,其中1代表星期日。valuesDAYOFWEEK(currenttimestamp);--6(当天为星期五)9、DAYOFWEEK_ISO()返回参数中的星期几,用范围在1-7的整数值表示,其中1代表星期一。valuesDAYOFWEEK_ISO(currenttimestamp);--5(当前为星期五)10、DAYOFYEAR()返回参数中一年中的第几天,用范围在1-366的整数值表示。valuesDAYOFYEAR(DATE('2012-02-01'));--3211、MONTHNAME()对于参数的月部分的月份,返回一个大小写混合的字符串(例如,January)。valuesMONTHNAME(CURRENTTIMESTAMP);--May(当前为五月)12、WEEK()返回参数中一年的第几周,用范围在1-54的整数值表示。以星期日作为一周的开始。(参数可以为日期格式或者日期格式的字符串)VALUESWEEK('2012-05-25')--2113、TIMESTAMPDIFF(n,CHAR(TIMESTAMP('2012-05-2510:23:24')-TIMESTAMP('2012-05-2510:20:24')))根据两个时间戳记之间的时差,返回由第一个参数定义的类型表示的估计时差。(整除部分,不会四舍五入)n=2:秒;n=4:分;n=8:时;n=16:天;n=32:周;n=64:月;n=128:季度;n=256:年;VALUESTIMESTAMPDIFF(2,CHAR(TIMESTAMP('2012-05-2510:23:24')-TIMESTAMP('2012-05-2510:20:24')));--180秒VALUESTIMESTAMPDIFF(4,CHAR(TIMESTAMP('2012-05-2512:23:24')-TIMESTAMP('2012-05-2510:20:22')));--123分钟VALUESTIMESTAMPDIFF(8,CHAR(TIMESTAMP('2012-05-2512:23:24')-TIMESTAMP('2012-05-2510:20:22')));--2小时VALUESTIMESTAMPDIFF(16,CHAR(TIMESTAMP('2012-07-2512:23:24')-TIMESTAMP('2012-05-2510:20:22')));--60天VALUESTIMESTAMPDIFF(32,CHAR(TIMESTAMP('2012-07-2512:23:24')-TIMESTAMP('2012-05-2510:20:22')));--8周VALUESTIMESTAMPDIFF(64,CHAR(TIMESTAMP('2012-07-2512:23:24')-TIMESTAMP('2012-05-2510:20:22')));--2月VALUESTIMESTAMPDIFF(128,CHAR(TIMESTAMP('2012-08-2510:20:22')-TIMESTAMP('2012-05-2510:20:22')));--1季度VALUESTIMESTAMPDIFF(256,CHAR(TIMESTAMP('2013-05-2510:20:22')-TIMESTAMP('2012-05-2510:20:22')));--1年14、时期的格式。ISO,使用国际标准组织(ISO)制订的日期和时间格式;USA,使用美国日期和时间的IBM标准格式。valueschar(currentdate,iso)--2012-05-25valueschar(currentdate,usa)--05/25/2012valueschar(currenttime,iso)--23.21.32
本文标题:db2日期和时间常用汇总
链接地址:https://www.777doc.com/doc-2909613 .html