numtodsinterval 函數用法

numtodsinterval(<x>,<c>) ,x是一個數字,c是一個字符串,
代表x的單位,這個函數把x轉爲interval day to second數據類型
經常使用的單位有 ('day','hour','minute','second')
example
SQL> select sysdate,sysdate+numtodsinterval(3,'hour') as res from dual;
SYSDATE             RES ------------------- -------------------

2019-10-09 09:52:07 2019-10-09 06:52:07函數

 
numtoyminterval 與numtodsinterval函數相似,將x轉爲interval year to month數據類型
經常使用的單位有'year','month'
example
SQL> select sysdate,sysdate+numtoyminterval(3,'year') as res from dual;
SYSDATE             RES ------------------- -------------------

2019-10-09 09:54:12 2022-10-09 09:54:12blog

-----------------------------------------------------------------------------------------------------------------------字符串

格式:NumToYMInterval(n, interval_unit);
n: 數值類型
interval_unit: 'YEAR', 'MONTH' ,或其餘能夠轉換成這兩個值之一的表達式
 
NumToYMInterval(1, 'YEAR') :一年後的間隔
NumToYMInterval(-1, 'MONTH'): 一個月前
 
小數會被計算成整數後,再作計算:
 
select sysdate + numtoyminterval(0.1, 'MONTH')  as future from dual;
 
FUTURE
------------------
2019-11-09 09:54:37
 
該函數的結果是:」INTERVAL YEAR TO MONTH literal「。不能與數值作運算。
select 1 + NumToYMInterval(1, 'MONTH') from dual
Oracle會返回一個錯誤。
 
作日期運算時,這個函數很是有用。例如:取一個月後的日期:
select sysdate + NumToYMInterval(1, 'MONTH') from dual;
相關文章
相關標籤/搜索