‘HELLO DB2‘ FROM SYSIBM.SYSDUMMY1;--HELLO DB2SELECT ‘HELLO DB2‘ FROM SYSIBM.DUAL;--HELLO DB2VALUES ‘HELLO DB2‘;--HELLO DB2
2、CURRENT DATE获取当前日期;CURRENT TIME获取当前时间;CURRENT TIMESTAMP获取当前时间戳(含年、月、日、时、分、秒)。
VALUES CURRENT DATE--2012/5/25 0:00:00;VALUES CURRENT TIME--20:48:53;VALUES CURRENT TIMESTAMP--2012/5/25 20:49:12;
3、YEAR()获取年;MONTH()获取月;DAY()获取日; HOUR()获取小时;MINUTE()获取分钟;SECOND()获取秒; DATE()获取日期;TIME()获取时间;TIMESTAMP()获取时间戳。 以上函数参数可以是日期时间类型,也可以为日期时间格式的字符串。
VALUES YEAR(CURRENT TIMESTAMP);/*2012*/ VALUES YEAR(‘2012-05-25 21:18:12‘);/*2012*/VALUES MONTH(CURRENT TIMESTAMP);/*5*/ VALUES MONTH(‘2012-05-25 21:18:12‘);/*5*/ VALUES DAY(CURRENT TIMESTAMP);/*25*/ VALUES DAY(‘2012-05-25 21:18:12‘);/*25*/VALUES HOUR(CURRENT TIMESTAMP);/*21*/ VALUES HOUR(‘2012-05-25 21:18:12‘);/*21*/VALUES MINUTE(CURRENT TIMESTAMP);/*18*/ VALUES MINUTE(‘2012-05-25 21:18:12‘);/*18*/VALUES SECOND(CURRENT TIMESTAMP);/*12*/ VALUES SECOND(‘2012-05-25 21:18:12‘);/*12*/VALUES DATE(CURRENT TIMESTAMP);/*2012/5/25 0:00:00*/ VALUES DATE(‘2012-05-25 21:18:12‘);/*2012/5/25 0:00:00*/VALUES TIME(CURRENT TIMESTAMP);/*21:18:12*/ VALUES TIME(‘2012-05-25 21:18:12‘);/*21:18:12*/VALUES TIMESTAMP(CURRENT TIMESTAMP);/*2012/5/25 21:18:12*/ VALUES TIMESTAMP(‘2012-05-25 21:18:12‘);/*2012/5/25 21:18:12*/
4、db2时间可以直接加减带单位的时间长度。
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 YEAR;--2013/5/25 21:18:12VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 MONTH;--2012/6/25 21:18:12VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 DAY;--2012/5/26 21:18:12VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 HOUR;--2012/5/25 22:18:12VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 MINUTE;--2012/5/25 21:19:12VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 SECOND;--2012/5/25 21:18:13VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 YEAR+1 MONTH+1 DAY+1 HOUR+1 MINUTE +1 SECOND ;--2013/6/26 22:19:13VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)-1 YEAR-1 MONTH-1 DAY-1 HOUR-1 MINUTE -1 SECOND ;--2011/4/24 20:17:11
5、通过days()可以获取两个时间相差天数。
VALUES DAYS(CURRENT DATE)-DAYS(CURRENT DATE-1000 DAY);--1000
6、TO_CHAR()把时间转换成指定格式的字符串类型(db2较低版本不支持)。 “YYYY-MM-DD HH:MI:SS” 十二小时制;“YYYY-MM-DD HH24:MI:SS” 二十四小时制。 (“YYYY-MM-DD hh:mm:ss”不会报错,但是mm值取的是月的值。)
SELECT TO_CHAR(TIMESTAMP(‘2012-5-25 21:18:12‘),‘YYYY-MM-DD‘) FROM SYSIBM.DUAL;--2012-05-25SELECT TO_CHAR(TIMESTAMP(‘2012-5-25 21:18:12‘),‘YYYY-MM-DD HH:MI:SS‘) FROM SYSIBM.DUAL;--2012-05-25 09:18:12SELECT TO_CHAR(TIMESTAMP(‘2012-5-25 21:18:12‘),‘YYYY-MM-DD HH24:MI:SS‘) FROM SYSIBM.DUAL;--2012-05-25 21:18:12(SELECT TO_CHAR(TIMESTAMP(‘2012-5-25 21:18:12‘),‘YYYY-MM-DD HH24:MM:SS‘) FROM SYSIBM.DUAL;--2012-05-25 21:05:12)
7、DAYNAME()返回指定日期的星期名,该星期名是由首字符大写、其他字符小写组成的英文名。
values DAYNAME(current timestamp)--Friday(当天为星期五)
8、DAYOFWEEK()返回参数中的星期几,用范围在 1-7 的整数值表示,其中 1 代表星期日。
values DAYOFWEEK(current timestamp);--6(当天为星期五)
9、DAYOFWEEK_ISO()返回参数中的星期几,用范围在 1-7 的整数值表示,其中 1 代表星期一。
values DAYOFWEEK_ISO(current timestamp);--5(当前为星期五)
10、DAYOFYEAR()返回参数中一年中的第几天,用范围在 1-366 的整数值表示。
values DAYOFYEAR(DATE(‘2012-02-01‘));--32
11、MONTHNAME()对于参数的月部分的月份,返回一个大小写混合的字符串(例如,January)。
values MONTHNAME(CURRENT TIMESTAMP);--May(当前为五月)
12、WEEK()返回参数中一年的第几周,用范围在 1-54 的整数值表示。以星期日作为一周的开始。(参数可以为日期格式或者日期格式的字符串)
VALUES WEEK(‘2012-05-25‘)--21
13、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(‘2012-05-25 10:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:24‘)));--180秒VALUES TIMESTAMPDIFF(4,CHAR(TIMESTAMP(‘2012-05-25 12:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--123分钟VALUES TIMESTAMPDIFF(8,CHAR(TIMESTAMP(‘2012-05-25 12:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--2小时VALUES TIMESTAMPDIFF(16,CHAR(TIMESTAMP(‘2012-07-25 12:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--60天VALUES TIMESTAMPDIFF(32,CHAR(TIMESTAMP(‘2012-07-25 12:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--8周VALUES TIMESTAMPDIFF(64,CHAR(TIMESTAMP(‘2012-07-25 12:23:24‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--2月VALUES TIMESTAMPDIFF(128,CHAR(TIMESTAMP(‘2012-08-25 10:20:22‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--1季度VALUES TIMESTAMPDIFF(256,CHAR(TIMESTAMP(‘2013-05-25 10:20:22‘)-TIMESTAMP(‘2012-05-25 10:20:22‘)));--1年
14、时期的格式。ISO,使用国际标准组织(ISO)制订的日期和时间格式;USA,使用美国日期和时间的 IBM 标准格式。
values char(current date,iso)--2012-05-25values char(current date,usa)--05/25/2012values char(current time,iso)--23.21.32
DB2日期与时间
标签:部分 htm .com www span font amp 大小写 低版本
小编还为您整理了以下内容,可能对您也有帮助:
DB2数据库如何获取当前系统时间
DB2数据库获取当前系统时间的方法和操作步骤如下:
1、首先,使用sysdate函数获取当前时间,并执行以下语句:“select sysdate from al”,如下图所示。
2、其次,使用sysdate()获取当前时间,执行以下语句:“select sysdate()”,确保添加括号,如下图所示。
3、接着,对于Gbase数据库(与获取当前时间的Mysql数据库相同),执行以下语句:“select sysdate()”,如下图所示。
4、然后,对于sysbase数据库,获取当前时间的函数是:“select getdate()”,如下图所示。
5、 随后,DB2数据库略有不同。 要获取当前时间,请使用以下查询sql:“SELECT current timestamp FROM sysibm.sysmmy1”,如下图所示。
6、最后,在获取当前时间之后,还希望将当前时间日期向前或向后一段时间。 对于DB2数据库,将当前时间提前一天:“select sysdate-1 from al”,如下图所示。
db2 timestamp和time的区别
在 db2中与日期时间相关的数据类型有 date, timestamp和time
date 中包含年月日信息,timestamp是时间戳的意思,包含年月日时分秒和毫秒,time是时间,只有时间信息,无日期等信息。
db2中关于date() to_date() char() to_char()函数的语法。是关于db2的,不是SQL、ORAClE 希望有经验者告知
1、DB2日期和时间的函数有:CURRENT DATE, CURRENT TIME, CURRENT TIMESTAMP
2、字符转换成日期直接使用:DATE('2010-01-01')
3、其它类型的值转换成CHAR使用函数:CHAR,例如CHAR(100)
DB2数据库如何获取当前系统时间
1、使用sysdate函数来获取当前时间,执行语句:select sysdate from al即可。
2、使用sysdate()来获取当前时间,执行语句:select sysdate(),一定注意加上括号。
3、对于Gbase数据库,其与Mysql数据库在获取当前时间上相同,执行语句:select sysdate()。
4、对于sysbase数据库,其获取当前时间的函数是:select getdate()。
4、DB2数据库略有不同,在获取当前时间上,使用如下的查询sql:SELECT current timestamp FROM sysibm.sysmmy1。
5、通常,我们在获取当前时间后,还想获得当前时间往前或者往后推一段时间的日期,对于DB2数据库,当前时间往前推一天: select sysdate-1 from al。