欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

DB2开发常用-------日期函数

程序员文章站 2022-05-09 16:24:05
...
DB2开发常用-------日期函数
获取时间
1、获取当期日期:
values current date;
2012-08-28
2、获取当期时间
values current time;
11:56:36
3、获取当前时间戳
values current timestamp;
2012-08-28 11:57:32
4、year()
获取当前年份
values year(current timestamp);
2012
5、month()
   获取当前月份
values month(current timestamp);
8
6、day()
    获取当前日
values day(current timestamp);
28
7、 hour()
    获取当前时
values hour(current timestamp);
12
8、minute()
    获取当前分
values minute(current timestamp);
3
9、second()
    获取秒
values second(current timestamp);
48
10、microsecond()
    获取毫秒
values microsecond(current timestamp);
59000
11、timestamp转varchar

values varchar_format(current timestamp,'yyyy-mm-dd hh24-mm-ss');
2012-08-28 12-08-21
12、timestamp中抽取date

values date(current timestamp);
2012-08-28
13、timestamp中抽取time

values time(current timestamp);
12:14:51
14、星期相关
Dayname()返回日期参数中的星期几,返回值类型:字符串;例如:星期一
values dayname(current timestamp);
Tuesday
Dayofweek()返回日期参数中的星期几,返回值类型:整数;例如:1;其中1代表星期日
values dayofweek(current timestamp);
3  ----今天是Tuesday
Dayofweek_iso()返回日期参数中的星期几,返回值类型:整数;例如:1;其中1代表星期一
values dayofweek_iso(current timestamp);
2  ----今天是Tuesday
Week()返回日期参数中所在年的第几周,返回范围在(1-54)的整数,以星期日作为一周的开始
values week(timestamp('2012-1-8'));
2
Week()返回日期参数中所在年的第几周,返回范围在(1-53)的整数,以星期一作为一周的开始

values week_iso(timestamp('2012-1-8'));
1

15、时间与字符串之间转换
Varchar_format(<time>,’yyyy-mm-dd’)返回值:字符串
values varchar_format(current timestamp,'yyyy-mm-dd hh24-mm-ss');
2012-08-28 12-08-37
To_char()
values to_char(current timestamp);
Aug 28, 2012 12:37:33 PM
Char()
values char(current timestamp);
2012-08-28-12.38.10.387000
values char(time('22:24:23'));
22.24.23
字符串转日期或时间
Date()
values date('2012-1-1');
2012-01-01
Time()
values time('22.22.22');
22:22:22
Timestamp()
values timestamp('2012-1-1-22.42.23.000890');
2012-01-01 22:42:23
16、时间计算
values current date+1 year+2 months+4 days;
2013-11-01    -----2012-08-28
17、时间差计算
Timestampdiff()
前提条件:1、不考虑闰年;2、假设每个月只有30天
1 = 秒的小数部分
2 = 秒
4 = 分
8 = 时
16 = 天
32 = 周
64 = 月
128 = 季度
256 = 年
timestampdiff(2,char(current timestamp - timestamp(task.create_)))
精确计算()返回值:整数
(DAYS(<timestamp1>) - DAYS(<timestamp2>)) * 86400 +
(MIDNIGHT_SECONDS(<timestamp1>) - MIDNIGHT_SECONDS(<timestamp2>))

相关标签: db2 日期函数