to_yminterval 這個函式名字可以拆分為 to ym interval
這樣就容易理解了.
其實to_yminterval 函式是將1個string 型別的資料(char, nchar, varchar2, nvarchar2) 轉化為 年和月的 時間差型別.
什麼是時間差型別? 例如'02-08' 就表示某兩個時間差了 2年零 8個月.
舉個例子.
假如我們要計算2023年1月1月 過2年零8個月後的日期.
可以利用如下sql語句.
sql> select to_date('20110101','yyyymmdd') + to_yminterval('02-08') from dual;
to_date('
---------
01-sep-13
也可以看出, to_yminterval 返回的值是可以和日期變數做加減運算的.
但是to_yminteral函式可以用來求兩個日期之間的年月差嗎?
比如這樣的..
select to_yminterval(to_char(sysdate - to_date('2001-01-01','yyyy-mm-dd'))) from dual;
答案是否的, 因為oracle中兩個日期相減返回的值是天數, 而to_yminterval的引數要求格式必須是'xx-xx'.
折中的方法是使用months_between函式, 可以得出兩個日期之間的月份差..
比如:
select months_between(sysdate,to_date('2001-01-01','yyyy-mm-dd')) from dual;
strtok函式簡析
官方的strtok函式,用來通過分隔字元 不支援字串,傳入的串中每個字元單獨當分隔符,如下例子組合的如123會處理1而23會被跳過 返回分隔的串的首位址 比如呼叫strtok abc123def 123456 返回值是指向abc的指標 下次要獲得 def 需要呼叫strtok null,123456...
iOS main函式簡析
如同任何基於c的應用程式,程式啟動的主入口點為ios應用程式的main函式。在ios應用程式,main函式的作用是很少的。它的主要工作是控制uikit framework。因此,你在xcode中建立任何新的專案都配備了乙個預設的主函式。除了少數特例外,你永遠不應該改變這個函式的實現。1 import...
over partition by 開窗函式簡介
簡單舉例 select code,kpi type,plan value num,row number over partition by code,kpi type order by plan value num desc rowno from fs target yp kpi 分析 code,k...