1. 程式人生 > >DB2日期時間處理函式

DB2日期時間處理函式

 

使用 days
字元型的日期:2012-01-01,2012-01-11
values days(date('2012-01-11')) - days(date('2012-01-01'))

--獲取當前日期:

select current date from sysibm.sysdummy1;
values current date;

--獲取當前日期
select current time from sysibm.sysdummy1;
values current time;
--獲取當前時間戳
select current timestamp from sysibm.sysdummy1;
values current timestamp;

--要使當前時間或當前時間戳記調整到GMT/CUT,則把當前的時間或時間戳記減去當前時區暫存器:

values current time -current timezone;
values current timestamp -current timezone;

--獲取當前年份
values year(current timestamp);

--獲取當前月
values month(current timestamp);

--獲取當前日
values day(current timestamp);

--獲取當前時
values hour(current timestamp);

--獲取分鐘
values minute(current timestamp);

--獲取秒
values second(current timestamp);

--獲取

毫秒
values microsecond(current timestamp);

--從時間戳記單獨抽取出日期和時間
values date(current timestamp);
values VARCHAR_FORMAT(current TIMESTAMP,'yyyy-mm-dd');
values char(current date);
values time(current timestamp);

--執行日期和時間的計算

values current date+1 year;
values current date+3 years+2 months +15 days;
values current time +5 hours -3 minutes +10 seconds;

--計算兩個日期之間的天數
values days(current date)- days(date('2010-02-20'));

--時間和日期換成字串
values char(current date);
values char(current time);

--要將字串轉換成日期或時間值
values timestamp('2010-03-09-22.43.00.000000');
values timestamp('2010-03-09 22:44:36');
values date('2010-03-09');
values date('03/09/2010');
values time('22:45:27');
values time('22.45.27');

--計算兩個時間戳記之間的時差:
--秒的小數部分為單位
values timestampdiff(1,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--秒為單位
values timestampdiff(2,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--分為單位
values timestampdiff(4,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--小時為單位
values timestampdiff(8,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--天為單位
values timestampdiff(16,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--周為單位
values timestampdiff(32,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--月為單位
values timestampdiff(64,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--季度為單位
values timestampdiff(128,char(current timestamp - timestamp('2010-01-01-00.00.00')));
--年為單位
values timestampdiff(256,char(current timestamp - timestamp('2010-01-01-00.00.00')));