標籤:des io ar 資料 sp 問題 c on r
一:前言
最近決定每天都把知識點總結下,然後每個星期把知識點在進行分類發表日誌。
二:The Question
(1):在oracle中進行年齡的計算,知道出生日期進行計算後截取,本來是一個很簡單的函數,但是我覺得對於這些東西真的是用多了自己就記住了所以我還是記載下來,不然我每次都要進行尋找,還是很麻煩的。
計算年齡的函數:
Trunc((sysdate-CSRQ)/365,0) as nl
這個函數的形式:Trunc(number,decimals);該函數是返回處理後的值。和ROUND相似,但是該函數不會做舍入處理,而是把小數點後的全部截去。
number:待截取處理的數值;
descimals:指明保留小數點後面的位元。(可選擇忽略,則截取去所有的小數點部分);
eg:
TRUNC(22.22,0)=22;
TRUNC(22.22)=22;
TRUNC(22.3356456,2)=22.33;
TRUNC(22.54464,-1)=20;
TRUNC也可以表示時間的截取:
eg:
trunc(sysdate,‘yyyy‘) --返回當年第一天.
trunc(sysdate,‘mm‘) --返回當月第一天.
trunc(sysdate,‘d‘) --返回當前星期的第一天.
剛剛自己實驗了以下這種情況: select Trunc(to_DATE(sysdate,‘dd-mon-yyyy‘)) from dual;
得到的結果時候如下:0014/9/23;
我想了一會還是不知道是為什麼。待解中。
(2):oracle中的replace函數
eg:replace(get_name(z.hjqh,‘XZQY‘),‘ ‘,‘‘)||z.hjmx) as hjmx;這個表示出去欄位中的空格
這裡說下在js中除去空格的情況 var aa="fdksja fckdjah fcsdajfha",aa=aa.raplace(/\s+/,"");
(3):oracle函數WM_CONCAT
今天在查詢一些問題時看到了一個oracle函數WM_CONCAT,剛剛開始我是不知道這個函數是什麼意思的,不過見到了急看一看,積少成多嘛,
自己在資料庫中隨便實驗了以下這個函數,大概知道了這個函數的準系統吧
select wm_concat(id) from t_xx whereid between 1 and 10;
結果為:1,2,3,4,5,6,7,8,9,10
說白了就是把id連起來中間用逗號分開。網上說的是如果要達到這種效果最好自己來寫個方法。因為oracle資料庫在版本不同時調用這個方法的傳回值類型可能有區別。
oracle中函數