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 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

原文地址:https://www.cnblogs.com/wy20110919/p/9068150.html

时间: 2024-10-06 11:25:55

DB2——db2日期和时间常用汇总的相关文章

DB2日期和时间函数汇总

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

MATLAB的日期和时间

MATLAB的日期和时间常用函数 函数 说明 calender 返回日历 clock 当前时间 date 当前日期 weekday 星期几 now 当前的日期和时间 datevec 以向量显示日期 datestr 以字符显示日期 cputime 经过的CPU时间 etime 经过的时间 tic 计时开始 toc 计时结束 eomday 一个月的最后一天 datenum 以数值显示日期 datetick 指定坐标轴的日期

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 'H

DB2 中日期 比较

在DB2中的Date 一共识别三种格式,最常见的是这样 '2013-12-12' 对,你没看错,DB2认为这样的字符串就是Date数据 然后我们可以利用函数这样寻找日期区间 select * from users where g_time between '2003-05-04 ' and '2003-05-08' 也可以利用操作符来进行常规的日期大小比较 select * from users where g_time >= '2003-05-04 ' 这篇文档更加详细http://www.c

Java常用日期、时间格式化转换符

常用日期.时间格式化转换符 转换符 说明 %te 一年中的某一天 %tb 指定语言环境的月份简称 %tB 指定语言环境的月份全称 %tA 指定语言环境的星期几全称 %ta 指定语言环境的星期几简称 %tc 包括全部日期和时间信息 %tY 4位年份 %tj 一年中的第几天 %tm 月份 %td 一个月中的第几天 %ty 2位年份 %tH 2位数字的24时制的小时 %tI 2位数字的12时制的小时 %tk 2位数字的24时制的小时 %tl 2位数字的12时制的小时 %tM 2位数字的分钟 %tS 2

java中关于时间日期操作的常用函数

Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date类的使用. 1.使用Date类代表当前系统时间 Date d = new Date(); System.out.println(d); 使用Date类的默认构造方法创建出的对象就代表当前时间,由于Date类覆盖了toString方法,所以可以直接输出Date类型的对象,显示的结果如下: Sun Ma

JDK中日期和时间的几个常用类浅析(五)

LocalDateTime   LocalDateTime是JDK8中才引入的类,用来表示不包含时区信息的本地日期和时间.我们可以把LocalDateTime看作是LocalDate和LocalTime的一个组合类.同样地,该类是一个不可变类,所以作用于该类对象上的方法都是返回一个该类的新对象.  通常,我们使用该类的静态工厂方法来创建该类对象.两种创建该类对象的示例代码如下:LocalDateTime ldt1 = LocalDateTime.now();LocalDateTime ldt2

前端学PHP之日期与时间

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

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

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