发布网友 发布时间:2022-04-08 18:52
共2个回答
懂视网 时间:2022-04-08 23:14
获取日期: VALUES DATE(CURRENT TIMESTAMP);--2016/1/6 VALUES CURRENT DATE;--2016/1/6 --获取时间 VALUES TIME(CURRENT TIMESTAMP);--16:40:40 VALUES CURRENT TIME;--16:40:40 --获取时间戳 VALUES TIMESTAMP(CURRENT TIMESTAMP);--2016/1/6 16:40:40 VALUES CURRENT TIMESTAMP;--2016/1/6 16:40:40 VALUES sysdate;--2016/1/6 16:40:40 --获取当前年份 values year(current timestamp);--2016 --获取当前月 values month(current timestamp);--1 --获取当前日 values day(current timestamp);--6 --获取当前时 values hour(current timestamp);--16 --获取分钟 values minute(current timestamp);--40 --获取秒 values second(current timestamp);--40 --获取毫秒 values microsecond(current timestamp); --4152692、DB2时间可以直接加减带单位的时间长度。
VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 YEAR;--2017/1/6 12:18:12 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 MONTH;--2016/2/6 12:18:12 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 DAY;--2016/1/7 12:18:12 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 HOUR;--2016/1/6 13:18:12 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 MINUTE;--2016/1/6 12:19:12 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 SECOND;--2016/1/6 12:18:13 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)+1 YEAR+1 MONTH+1 DAY+1 HOUR+1 MINUTE +1 SECOND ;--2017/2/7 13:19:13 VALUES TIMESTAMP(‘2016-1-06 12:18:12‘)-1 YEAR-1 MONTH-1 DAY-1 HOUR-1 MINUTE -1 SECOND ;--2014/12/5 11:17:11
3、通过days()可以获取两个时间相差天数。
VALUES DAYS(CURRENT DATE)-DAYS(CURRENT DATE-1000 DAY);--1000
4、通函数可以获取时间对应的周(月)。
--DAYNAME()返回指定日期的星期名,该星期名是由首字符大写、其他字符小写组成的英文名。 values DAYNAME(current timestamp);--Wednesday(当天为星期五) --DAYOFWEEK()返回参数中的星期几,用范围在 1-7 的整数值表示,其中 1 代表星期日。 values DAYOFWEEK(current timestamp);--4(当天为星期三) --DAYOFWEEK_ISO()返回参数中的星期几,用范围在 1-7 的整数值表示,其中 1 代表星期一。 values DAYOFWEEK_ISO(current timestamp);--3(当前为星期三) --DAYOFYEAR()返回参数中一年中的第几天,用范围在 1-366 的整数值表示。 values DAYOFYEAR(current timestamp);--6 --MONTHNAME()对于参数的月部分的月份,返回一个大小写混合的字符串(例如,January)。 values MONTHNAME(CURRENT TIMESTAMP);--January(当前为一月) --WEEK()返回参数中一年的第几周,用范围在 1-54 的整数值表示。以星期日作为一周的开始。(参数可以为日期格式或者日期格式的字符串) VALUES WEEK(‘2016-01-02‘);--1 VALUES WEEK(‘2016-01-03‘);--2 --WEEK_ISO()返回参数中一年的第几周,用范围在 1-54 的整数值表示。以星期一作为一周的开始。(参数可以为日期格式或者日期格式的字符串) VALUES WEEK_ISO(‘2016-01-02‘);--53 VALUES WEEK_ISO(‘2016-01-03‘);--53 VALUES WEEK_ISO(‘2016-01-04‘);--1
5、TIMESTAMPDIFF(n,CHAR(TIMESTAMP(‘2012-05-25 10:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:24‘)))根据两个时间戳记之间的时差,返回由第一个参数定义的类型表示的估计时差。(整除部分,不会四舍五入)
n=2:秒 ; n=4 :分; n=8:时;
n=16 :天; n=32 :周;n=64:月;
n=128 :季度; n=256:年;
VALUES TIMESTAMPDIFF(2,CHAR(TIMESTAMP(‘2016-01-06 12:23:24‘)-TIMESTAMP(‘2016-01-06 12:20:24‘))); --180秒 VALUES TIMESTAMPDIFF(4,CHAR(TIMESTAMP(‘2016-01-06 12:23:24‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --123分钟 VALUES TIMESTAMPDIFF(8,CHAR(TIMESTAMP(‘2016-01-06 12:23:24‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --2小时 VALUES TIMESTAMPDIFF(16,CHAR(TIMESTAMP(‘2016-01-07 12:23:24‘)-TIMESTAMP(‘2016-01-06 15:20:22‘))); --0天 VALUES TIMESTAMPDIFF(16,CHAR(TIMESTAMP(‘2016-01-07 12:23:24‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --1天 VALUES TIMESTAMPDIFF(32,CHAR(TIMESTAMP(‘2016-03-06 12:23:24‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --8周 VALUES TIMESTAMPDIFF(64,CHAR(TIMESTAMP(‘2016-03-06 12:23:24‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --2月 VALUES TIMESTAMPDIFF(128,CHAR(TIMESTAMP(‘2016-05-06 10:20:22‘)-TIMESTAMP(‘2016-02-06 10:20:22‘))); --1季度 VALUES TIMESTAMPDIFF(256,CHAR(TIMESTAMP(‘2017-01-06 10:20:22‘)-TIMESTAMP(‘2016-01-06 10:20:22‘))); --1年
DB2日期和时间函数汇总
标签:
热心网友 时间:2022-04-08 20:22
比如说一张表T中有一个名为DATE的日期型字段