oracle中幾個常用的函式

2021-08-14 18:37:17 字數 2897 閱讀 3314

(1)四捨五入函式

round ( 要處理的數 [ 四捨五入開始的位置,省略預設為0 ] )

四捨五入開始的位置,從小數點後一位開始,正數向後移,複數向前移

round(23.45) 23

round(23.45,1) 23.5

round(23.45,-1) 20

(2)取整函式

ceil() 取上限,大的

floor() 取下限,小的

ceil(23.45) 24

floor(23.45) 23

(3)絕對值函式

abs(23)

(4)取餘數

mod(5,2)

兩個數中有乙個數為null,則結果為空

(5)m的n次冪

power(m,n)

(6)平方根

sqrt(n)

(7)三角函式

sin(弧度值) 正弦值

asin(弧度值) 反正弦值

函式y=sinx的反函式叫做反正弦函式,記作x=arcsiny

(1)大小寫轉換函式

upper(char)從小寫變成大寫

lower(char) 從大寫變成小寫

initcap(char) 將首字母變成大寫

(2)獲取子字串函式

substr(char,[m[,n]])

m表示取子串的開始位置 ,m為正數時,表示從頭開始,m為負數時,表示從為尾開始

n表示擷取子串的位數,n可以省略表示從m的位置擷取到字串末尾;

(3)獲取字串長度函式

length(『字串 『)

如果字串中有空格也算

(4)字串連線函式

concat(字串1,字串2)

重點內容

(5)去除子串函式

trim(c2 from c1)

字串c1中去除字元c2

ltrim( c1 [,c2] )

字串c1中去除字元c2 從頭開始找,遇到不一樣的停止

rtrim( c1 [,c2] )

字串c1中去除字元c2 從尾開始找,遇到不一樣的停止

注 c2 也可以寫成字串,但結果不一樣;

trim(『字串』) 去掉左右兩邊的空格

ltrim(『字串』) 去掉左邊的空格

rtrim(『字串』) 去掉右邊的空格

(6)替換函式

replace(『源字串』,』要被替換的字串』,』用來替換的字串』)

如果省略掉用來替換的字串,就用空格替換

select sysdate from dual; 當前系統時間

(1)新增月份

add_months(要處理日期,增加的月份,可以是任一整數,如果是小數,則擷取整數部分)

select to_char(

add_months(

to_date('2017-01-23','yyyy-mm-dd'),3),'yyyy-mm-dd')

from dual;

(2)下乙個星期幾的日期

next_day(date,char)作用:

如果chat的值是『星期一』,則返回date指定日期的下周一是哪天

select next_day(sysdate,』星期一』)from dual;

(3)每個月最後一天是幾號

last_day(date)

select last_day(sysdate) from dual;

(4)2個日期間多少個月

months_between(date1,date2)

select months_between(『10-5月-18』,』10-1月-18』) from dual;

(5)單獨獲取年,月,人,日,時

select extract(year from sysdate) from dual; 年

select extract(month from sysdate) from dual; 月

select extract(day from sysdate) from dual; 日

select extract(hour from timestamp 『2015-10-1 22:25:13』) from dual; 時

(1)日期轉換成字元的函式

to_char( date[,fmt[,params]] )

引數說明:

date:將要轉換的日期

fmt:轉換的格式

params:日期的語言(預設為環境的語言,預設不寫)

select to_char(sysdate,』yyyy-mm-dd hh24:mi:ss』)from dual;

(2)字元轉換成日期的函式

to_date( char[,fmt[,params]] )

(3)數字轉換成字元的函式

to_char(number[,fmt])

9:顯示數字並忽略前面的0

0:顯示數字,位數不足,用0補齊

.:顯示小數點

,:顯示千位符

$:美元符號

s:加正負號(用來替換正負號,前後寫都可以,但不能同時出現)

select to_char(-5.22,』9.99s』) from dual;

5.22-

(4)字元轉換成數字的函式

to_number(char[,fmt])

select to_number(『53.22』,』99.99』) from dual;

Oracle 幾個常用函式

1.判斷字段內容長度 length 欄位名 10 2.沒有值用 替代 nvl 欄位名,3.上面兩個結合 length nvl 欄位名,10 4.case when 用法 case when length nvl 欄位名,10 then 欄位名 else null end 別名 說明 當字段長度為10...

oracle中的幾個函式

1 with as with temp as select from table1 where 1 1 select from temp 2 union 和 union all union 對兩個結果集進行並集操作,不包括重複行,同時進行預設規則的排序 union all 對兩個結果集進行並集操作,...

Oracle 常用的幾個轉換函式

1 to char 格式 to char date number,format 該函式可將日期或者數字轉換成字元指定的字元格式 用法 select to char sysdate from dual 結果為 31 5月 13 select to char sysdate,yyyy mm dd fro...