1. SQL语句得到当前的日期,时间和时间戳
SELECT current date FROM sysibm.sysdummy1;
SELECT current time FROM sysibm.sysdummy1;
SELECT current timestamp FROM sysibm.sysdummy1;
sysibm.sysdummy1表是一个在内存中特殊的表,可以使用上面的语句得到DB2寄存器的值。也还可以用关键字VALUES来获取寄存器中的值。例如,在DB2命令行处理器中,可以用下面的SQL语句获取同样的信息:
VALUES CURRENT DATE--2016-06-21;
VALUES CURRENT TIME--12:27:32;
VALUES CURRENT TIMESTAMP--2016-06-21 12:27:32;
2. 给定了日期、时间或时间戳,则使用适当的函数抽取出(如果适用的话)年、月、日、时、分、秒及微秒各部分:
-- 获取当前年份
VALUES YEAR (current timestamp);--2016
-- 获取当前月份
VALUES MONTH (current timestamp); --6
VALUES DAY (current timestamp); --21
VALUES HOUR (current timestamp); --12
VALUES MINUTE (current timestamp); --30
VALUES SECOND (current timestamp); --21
VALUES MICROSECOND (current timestamp);--875000
VALUES TIME(CURRENT TIMESTAMP);--12:31:08
VALUES TIMESTAMP(CURRENT TIMESTAMP);--2016-12-21 12:31:30
3. TO_CHAR 和 TO_DATE函数作为时间转换格式函数,而且数据类型是timestamp
TO_CHAR (timestamp_expression,'YYY-MM-DD HH24:MI:SS')
TO_DATE (string_expression, 'YYY-MM-DD HH24:MI:SS')
4. 即时间格式为DD/MM/YYYY。如果希望修改格式,您需要使用不同的时间格式重新联编DB2工具包。支持的格式有:
DEF 使用和数据库国家/地区代码相关的日期时间格式。
EUR 使用IBM欧洲标准日期时间格式。
ISO 使用ISO日期时间格式。
JIS 使用日本工业标准日期时间格式。
LOC 使用和数据库国家/地区代码结合的本地日期时间格式。
USA 使用IBM美国标准时间日期格式。
例子:连接当前日期和时间格式为:yyyy-mm-dd hh:Mi:ss
select (char(current date) || ' ' || char(current time,JIS)) from sysibm.sysdummy1; --2016-06-22 10:55:36