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 |
Dayofweek_iso()返回日期参数中的星期几,返回值类型:整数;例如:1;其中1代表星期一 |
values dayofweek_iso(current timestamp); 2 |
Week()返回日期参数中所在年的第几周,返回范围在(1-54)的整数,以星期日作为一周的开始 |
values week(timestamp('2012-1-8')); 2 |
Week()返回日期参数中所在年的第几周,返回范围在(1-53)的整数,以星期一作为一周的开始ITPUB个人空间ks t7\W K |
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 |
17、时间差计算 Timestampdiff() 前提条件:1、不考虑闰年;2、假设每个月只有30天 1 = 秒的小数部分 |
timestampdiff(2,char(current timestamp - timestamp(task.create_))) |
精确计算()返回值:整数 |
(DAYS(<timestamp1>) - DAYS(<timestamp2>)) * 86400 + |