DB2日期与时间

摘选自:http://www.cnblogs.com/wanghonghu/archive/2012/05/25/2518604.html

1、db2可以通过SYSIBM.SYSDUMMY1、SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值。

SELECT ‘HELLO DB2‘ FROM SYSIBM.SYSDUMMY1;--HELLO DB2
SELECT ‘HELLO DB2‘ FROM SYSIBM.DUAL;--HELLO DB2
VALUES ‘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:12
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 MONTH;--2012/6/25 21:18:12
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 DAY;--2012/5/26 21:18:12
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 HOUR;--2012/5/25 22:18:12
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 MINUTE;--2012/5/25 21:19:12
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 SECOND;--2012/5/25 21:18:13
VALUES TIMESTAMP(‘2012-5-25 21:18:12‘)+1 YEAR+1 MONTH+1 DAY+1 HOUR+1 MINUTE +1 SECOND ;--2013/6/26 22:19:13
VALUES 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-25
SELECT TO_CHAR(TIMESTAMP(‘2012-5-25 21:18:12‘),‘YYYY-MM-DD HH:MI:SS‘) FROM SYSIBM.DUAL;--2012-05-25 09:18:12
SELECT 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-25
values char(current date,usa)--05/25/2012
values char(current time,iso)--23.21.32
时间: 2024-08-03 20:22:19

DB2日期与时间的相关文章

DB2——db2日期和时间常用汇总

1.db2可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值. SELECT 'HELLO DB2' FROM SYSIBM.SYSDUMMY1;--HELLO DB2 SELECT 'HELLO DB2' FROM SYSIBM.DUAL;--HELLO DB2 VALUES 'HELLO DB2';--HELLO DB2 2.CURRENT DATE获取当前日期:CURRENT TIME获取当前时间:CURRENT

DB2日期和时间函数汇总

上一篇提到过在DB2中,可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值.则在这篇中,我们直接用VALUES关键字来看看这些函数. 1.CURRENT DATE获取当前日期:CURRENT TIME获取当前时间:CURRENT TIMESTAMP获取当前时间戳(含年.月.日.时.分.秒):YEAR()获取年:MONTH()获取月:DAY()获取日: HOUR()获取小时:MINUTE()获取分钟:SECOND()获取秒

DB2 日期时间函数

db2日期时间函数 (DATE(TRIM(CHAR(DT#11Y))||'-'||TRIM(CHAR(DT#11M))||'-'||TRIM(CHAR(DT#11D))) BETWEEN DATE('" & strDate1 & "') AND DATE('" & strDate2 & "')) (Y > y) OR ((Y = y) AND (M > m)) OR ((Y = y) AND (M = m) AND (D

php日期和时间基础知识--Unix时间戳

<?php /*1.取得当前的Unix时间戳 UNIX 时间戳(英文叫做:timestamp)是 PHP 中关于时间与日期的一个很重要的概念,它表示从 1970年1月1日 00:00:00 到当前时间的秒数之和. PHP提供了内置函数 time() 来取得服务器当前时间的时间戳.那么获取当前的UNIX时间戳就很简单了. */ $timer = time(); echo $timer; /*2.取得当前的日期 php内置了date()函数,来取得当前的日期. 函数说明:date(时间戳的格式, 规

(十六)PL/SQL日期及时间

PL/SQL提供两个日期和时间相关的数据类型: 1.日期时间(Datetime)数据类型 DATE TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP WITH LOCAL TIME ZONE 2.间隔数据类型 INTERVAL YEAR TO MONTH INTERVAL DAY TO SECOND   一.日期时间字段值和间隔数据类型这两个日期时间和间隔数据类型包括字段.这些字段的值确定的数据类型的值.下表列出了时间和间隔的字段及其可能的值. 字段名称

前端学PHP之日期与时间

前面的话 在Web程序开发时,时间发挥着重要的作用,不仅在数据存储和显示时需要日期和时间的参与,好多功能模块的开发,时间通常都是至关重要的.网页静态化需要判断缓存时间.页面访问消耗的时间需要计算.根据不同的时间段提供不同的业务等都离不开时间.PHP为我们提供了强大的日期和时间处理功能,通过内置的时间和日期函数库,不仅能够得到PHP程序在运行时所在服务器中的日期和时间,还可以对它们进行任意检查和格式化,以及在不同格式之间进行转换等.本文将详细介绍PHP中的日期和时间 [注意]关于javascrip

使用moment.js轻松管理日期和时间

大家在前端Javascript开发中会遇到处理日期时间的问题,经常会拿来一大堆处理函数才能完成一个简单的日期时间显示效果.今天我给大家介绍一个轻量级的Javascript日期处理类库:moment.js,使用它可以轻松解决前端开发中遇到的种种日期时间问题. 查看演示 下载源码 moment.js不依赖任何第三方库,支持字符串.Date.时间戳以及数组等格式,可以像PHP的date()函数一样,格式化日期时间,计算相对时间,获取特定时间后的日期时间等等,本文有如下举例. 格式化日期 当前时间: m

PHP的日期和时间

一.UNIX时间戳 以32位的整数表示格林威治标准时间.UNIX时间戳是从1970年1月1日零点开始起到当前时间所经历的秒数. 1.将日期和时间转变成UNIX时间戳 (1)mktime()函数 <?pph echo date("Y-m-d-h-m-s",mktime(12,10,56,12,67,2016))."\n"; ?> (2)strtotime()函数 <?php echo date("Y-m-d",strtotime(

跟王老师学MySQL:MySQL数据类型之日期与时间类型

跟王老师学MySQL:MySQL数据类型之日期与时间类型 主讲教师:王少华   QQ群号:483773664 学习内容 YEAR类型的特点及使用 TIME类型的特点及使用 DATE类型的特点及使用 DATETIME类型的特点及使用 TIMESTAMP类型的特点及使用 MySQL表示日期和时间的数据类型有以下几种: 1.YEAR类型 2.TIME类型 3.DATE类型 4.DATETIME类型 5.TIMESTAMP类型 一.Year类型 (一)简介 year使用一个字符串来表示年份 MySQL中