1. 程式人生 > >DB2日期時間函式簡介及使用

DB2日期時間函式簡介及使用

1、year(exp) :取exp的year部分。 
引數:date、timestamp型別,日期間隔,時間戳間隔, 
      或者一個有效的date或者timestamp字串(非CLOB型別)。 
      若為雙位元組的graphic型別,則將會被轉換為字串,再取值。 
返回值:large integer型別; 
        若引數為null,返回值也為null 
        若引數為date,timestamp,有效的date或者timestamp字串,返回值範圍[1 — 9999] 
        若為日期間隔或時間戳間隔,則返回值範圍[-9999 — 9999] 


values (year(date('1990-01-01')-sysdate), --日期間隔 
        sysdate,                          --系統日期 
        year(sysdate),                    --取系統日期的年部分 
        year(current timestamp),          --取當前時間戳的年部分 
        current timestamp)                --當前時間戳 

1           2                   3           4           5 

----------- ------------------- ----------- ----------- -------------------------- 
        -23 2013-03-25-09.53.49        2013        2013 2013-03-25-09.53.49.163000 
  1 條記錄已選擇。 

2、month(exp) :取exp的month部分。 
引數:date、timestamp型別,日期間隔,時間戳間隔, 
      或者一個有效的date或者timestamp字串(非CLOB型別)。 
      若為雙位元組的graphic型別(除了DBCLOB型別),則將會被轉換為字串,再取值。 

返回值:large integer型別; 
        若exp為null,返回值也為null 
        若引數為date,timestamp,有效的date或者timestamp字串,返回值範圍[1 — 12] 
        若引數為日期間隔或者時間戳間隔,返回值的範圍[-99 — 99] 
values (sysdate, 
        month(sysdate), 
        month(date('2013-01-01')-date('1900-5-01')), 
        month(date('2000-02-01')-date('2010-01-01'))) 

1                   2           3           4 
------------------- ----------- ----------- ----------- 
2013-03-25-10.11.36           3           8         -11 
  1 條記錄已選擇。 

3、day(exp) :返回exp的day部分。 
引數:date、timestamp型別,日期間隔,時間戳間隔, 
      或者一個有效的date或者timestamp字串(非CLOB型別)。 
      若為雙位元組的graphic型別(除了DBCLOB型別),則將會被轉換為字串,再取值。 
返回值:large integer型別; 
        若exp為null,返回值也為null 
        若引數為date,timestamp,有效的date或者timestamp字串,返回值範圍[1 — 31] 
        若引數為日期間隔或者時間戳間隔,返回值的範圍[-99 — 99] 
values (day(date('2000-03-15')-date('1999-12-31')), 
        day(date('1900-01-01-00.00.00')-sysdate), 
        sysdate) 

1           2           3 
----------- ----------- ------------------- 
         15         -24 2013-03-25-10.24.41 
  1 條記錄已選擇。 

相關函式: 
days(exp):返回exp與date('0001-01-01')之間的天數 
引數:date、timestamp型別,日期間隔,時間戳間隔, 
      或者一個有效的date或者timestamp字串(非CLOB型別)。 
      若為雙位元組的graphic型別(除了DBCLOB型別),則將會被轉換為字串,再取值。 
返回值:large integer型別。 

values (sysdate, 
        days(sysdate)/365, 
        days(date('2000-01-01')), 
        days(date('2000-01-01'))/365) 

1                   2           3           4 
------------------- ----------- ----------- ----------- 
2013-03-25-10.41.56        2013      730120        2000 
  1 條記錄已選擇。 

4、hour(exp) :取exp的hour部分。 
引數:exp允許的型別如下: 
      有效的datetime形式的字串,非CLOB型別。 
      time或者timestamp間隔。 
返回值:large integer型別。 
        若引數為null,則返回null。 
        若引數為time,timestamp,或者有效的time或timestamp形式的字串,則返回值範圍[0 — 24]。 
        若引數為date,或者有效的date形式的字串,則返回0。 
        若引數為time或者timestamp間隔的話,則返回值範圍[-99 — 99] 
values (hour(current time), 
        current time, 
        hour('12:10:01'), 
        hour(time('10:10:10')-time('22:10:10')), 
        hour(current timestamp-timestamp('2010-01-01-10.10.10.000000'))) 

1           2        3           4           5 
----------- -------- ----------- ----------- ----------- 
         11 11:30:33          12         -12           1 
  1 條記錄已選擇。 

5、minute(exp) :取exp的minute部分。 
引數:date、time、timestamp型別,時間間隔,時間戳間隔, 
      或者一個有效的date、time或者timestamp字串(非CLOB型別)。 
      若引數為date型別,首先先轉換為timestamp(0)型別(00.00.00)。 
返回值:large integer型別。 
        引數為null,返回值為null。 
        若引數為date、time、timestamp,或者一個有效的字串,返回值範圍[0 — 59]。 
        若引數為時間或者時間戳間隔,返回值範圍[-99 — 99]。 
values (minute(date('2012-01-01')), 
        minute(current time), 
        minute(time('00:00:10')-time('14:59:10')), 
        minute(time('05:59:59')-time('01:01:01')), 
        minute(current timestamp)) 

1           2           3           4           5 
----------- ----------- ----------- ----------- ----------- 
          0          46         -59          58          46 
  1 條記錄已選擇。 

6、second(exp1[,exp2]) :取exp1的second部分,小數點長度為exp2。 
引數:exp1:date,time,timestamp,時間間隔或者時間戳間隔,或者有效的字串(非clob、dblob); 
      字串的首位空格先被移除,在進行轉換為相應的日期時間值。 
      若為date型別,預設被轉換為timestamp(0)。 
      exp2:範圍[0 — 12],表示結果的小數點位數,若有此引數,結果的精度為decimal(2+exp2,exp2)。 
返回值:若exp1為date,time,timestamp或者有效的字串,只有exp1引數,返回值範圍[0 — 59]; 
            如果exp1,exp2都存在,則返回值整數部分的範圍[0 - 59],小數部分長度由exp2決定。 
        若exp1為時間間隔或者時間戳間隔,只有exp1引數,返回值範圍[-99 - 99]; 
            如果兩個引數都有,返回值的整數部分範圍[-99 - 99],小數部分,小數部分由exp2決定。 
db2 => values (second(current timestamp,3),second(current timestamp,6),second(time'12:12:14')) 

1       2          3 
------- ---------- ----------- 
 52.172  52.172000          14 
  1 條記錄已選擇。 

7、microsecond(exp) :取exp的microsecond部分。 
引數:date、timestamp,時間戳間隔,或者有效的日期、時間戳字串(char或者varchar)。 
      若引數為date型別,首先先轉換為timestamp(0)型別(00.00.00)。 
返回值:large integer型別。 
        若引數為null,返回值也為null。 
        若引數為date、timestamp,或者有效的日期、時間戳字串,返回值範圍[0 — 999999], 
        時間戳精度超過6的,將會被擷取。 
        若引數為時間戳間隔,返回值範圍[-999999 — 999999] 
values (microsecond(current timestamp), 
        current timestamp, 
        microsecond(current date), 
        microsecond(timestamp('2013-01-01-12.20.59.123456'))) 

1           2                          3           4 
DB2字元函式簡介使用

1、ASCII(s):取表示式s最左端一個字元的ascii碼。 引數:任意內建字元型別, 返回值:integer型別。 db2 => values (ascii('A'),ascii('Abc'),ascii('1'),ascii('@'),ascii(null))

mysql 常用日期,時間函式

MySQL常用時間函式   1.1 獲得當前日期+時間(date + time)函式:now()   1.2 獲得當前日期+時間(date + time)函式:sysdate() sysdate() 日期時間函式跟 now() 類似,不同之處在於:now()

日期時間函式

日期時間型別的資料也是經常用到的,比如員工出生日期、結賬日期、入庫日期等等,而且經常需要對這些資料進行處理,比如檢索所有超過保質期的商品、將結賬日期向後延遲3天、檢索所有每個月18日的入庫記錄,進行這些處理就需要使用日期時間函式。SQL中提供了豐富的日期時間函式用於完成這些功能,本節將對這些日期時間函式進行詳

PostgreSQL的日期/時間函式

零、前言 公司裡有一臺阿里雲RDS資料庫用了PPAS(Postgres PlusTM Advanced Server),在處理日期/時間時遇到一些問題,花了點時間整理如下。 一、獲取當前時間 select now() select current_timestamp se

**mysql日期時間函式**

-- MySQL日期時間處理函式 -- 當前日期:2017-05-12(突然發現今天512,是不是會拉防空警報) SELECT NOW() FROM DUAL;-- 當前日期時間:2017-05-12 11:41:47 -- 在MySQL裡也存在和Ora

Oracle時間函式 to_char()常用時間格式

  TO_CHAR({ datetime | interval } [, fmt [, 'nlsparam' ] ]) Oracle  TO_CHAR()函式返回以指定格式表示的字串DATE或INTERVAL值。 { datetime | interval }是一個D

MySql常用日期時間函式

返回當前的日期和時間 select SYSDATE(); --2018-11-13 17:57:37 select NOW(); --2018-11-13 17:57:37 select CURDATE(); --2018-11-13 select CURTIME();

VB.NET函式——日期時間函式

<一> 獲取/設定目前日期時間函式  (1)Now ():返回系統目前的日期和時間。如:2007-3-29 早上10:38:22  (2)Today ():返回或設定系統目前的日期。  (3)TimeOfDay ():返回或設定系統目前的時間。  (4)Data

Oralce時間運算和日期時間函式

源時間:to_char(DateValue)); 源時間減1天:to_char(DateValue-1)); 源時間減1天1小時:to_char(DateValue-1-1/24)); 源時間減1天1小時1分:to_char(DateValue-1-1/24-1/(24*6

ORACLE日期時間函式大全

TO_DATE格式(以時間:2007-11-02 13:45:25為例) Year: yy two digits 兩位年 顯示值:07 yyy three digits 三位年

SQL Server日期時間函式

日期時間函式      1、獲取當前日期GetDate           getdate()函式以datetime資料型別的格式返回當前SQLServer伺服器所在計算機的日期和時間。其語法格式為getdate()。返回值舍入到最近的秒小數部 分,精度為.333秒資料庫十

SQL日期時間函式(2)

我們把這個語句分開來看看它是如何工作的。最核心的函式是getdate(),大部分人都知道這個是返回當前的日期和時間的函式。下一個執行的函式DATEDIFF(mm,0,getdate())是計算當前日期和“1900-01-01 00:00:00.000”這個日期之間的月數。記住:時期和時間變數和毫秒一樣是從“1

MySQL日期時間函式大全

DAYOFWEEK(date)  返回日期date是星期幾(1=星期天,2=星期一,……7=星期六,ODBC標準) mysql> select DAYOFWEEK('1998-02-03');   -> 3 WEEKDAY(date)  返回日期date是星期幾(0=星期一,1=星期二,

Python日期時間函式

所有日期、時間的api都在datetime模組內。1. 日期輸出格式化 datetime => stringimport datetimenow = datetime.datetime.now()now.strftime('%Y-%m-%d %H:%M:%S')  輸出

MySQL 有關日期時間 函式總結

一、MySQL 獲得當前日期時間 函式1.1 獲得當前日期+時間(date + time)函式:now() mysql>select now();+---------------------+| now()               |+---------------------+|2008-08-0

Linux下對檔案的操作的相關函式簡介用法

主要涉及的函式原型及引數解釋: open函式:用於開啟一個普通檔案      函式原型  int open(const char *path,int flag,/*int mode*/);  引數解釋:      const char *path:  即相應路徑下的檔