oracle常用函式總結

2021-12-21 12:08:41 字數 4083 閱讀 8560

返回與指定的字元對應的十進位制數;

sql>select ascii('a') a,ascii('a') a,ascii(0) zero,ascii(' ') space from dual;

a a zero space

65 97 48 32

給出整數,返回對應的字元;

sql>select chr(54740) zhao,chr(65) chr65 from dual;

zh c

-- -

趙 a連線兩個字串;

sql>select concat('010-','88888888')||'×23' ° from dual;

高幹競**

010-********轉23

返回字串並將字串的第乙個字母變為大寫;

sql>select initcap('smith') upp from dual;

upp-----

smith

在乙個字串中搜尋指定的字元,返回發現指定的字元的位置;

c1 被搜尋的字串

c2 希望搜尋的字串

i 搜尋的開始位置,預設為1

j 出現的位置,預設為1

sql>select instr('oracle traning','ra',1,2) instring from dual;

instring

9 返回字串的長度;

sql>select name,length(name),sal,length(to_char(sal)) from

name length(name) addr length(addr) sal length(to_char(sal))

高幹競 3 北京市海錠區 6 9999.99 7

返回字串,並將所有的字元小寫

sql>select lower('aabbccdd')aabbccdd from dual;

aabbccdd

--------

aabbccdd

返回字串,並將所有的字元大寫

sql>select upper('aabbccdd') upper from dual;

upper

--------

aabbccdd

rpad 在列的右邊貼上字元

lpad 在列的左邊貼上字元

sql>select lpad(rpad('gao',10,'*'),17,'*')from dual;

lpad(rpad(gao,1

*******gao*******

不夠字元則用*來填滿

ltrim 刪除左邊出現的字串

rtrim 刪除右邊出現的字串

sql>select ltrim(rtrim(' gao qian jingfrom dual;

ltrim(rtrim(

gao qian jing

取子字串,從start開始,取count個

sql>select substr(130********,3,8) from dual;

select substr('asaasasasasa',3,8) from dual;

substr(

--------

08888888

string 希望被替換的字元或變數

s1 被替換的字串

s2 要替換的字串

sql> select replace('he love you','he','i') from dual;

replace(h

i love you

返回乙個與給定的字串讀音相同的字串

sql>create table table1(xm varchar(8));

insert into table1 values('weather');

insert into table1 values('wether');

insert into table1 values('gao');

select xm from table1 where soundex(xm)=soundex('weather');

xm --------

weather

wether

leading 剪掉前面的字元

trailing 剪掉後面的字元

如果不指定,預設為空格符

sql>select trim('s' from 'astringss') from dual;

select trim('s' from 'sdssds') from dual;

返回指定值的絕對值

sql>select abs(100),abs(-100) from dual;

abs(100) abs(-100)

100 100

給出反余弦的值

sql>select acos(-1) from dual;

acos(-1)

3.1415927

給出反正弦的值

sql>select asin(0.5) from dual;

asin(0.5)

.52359878

返回乙個數字的反正切值

sql>select atan(1) from dual;

atan(1)

.78539816

返回大於或等於給出數字的最小整數

sql>select ceil(3.1415927) from dual;

ceil(3.1415927)

4 返回乙個給定數字的余弦

sql> select cos(-3.1415927) from dual;

cos(-3.1415927)

-1 返回乙個數字反余弦值

sql> select cosh(20) from dual;

cosh(20)

242582598

返回乙個數字e的n次方根

sql> select exp(2),exp(1) from dual;

exp(2) exp(1)

7.3890561 2.7182818

對給定的數字取整數

sql> select floor(2345.67) from dual;

floor(2345.67)

2345

返回乙個數字的對數值

sql> select ln(1),ln(2),ln(2.7182818) from dual;

ln(1) ln(2) ln(2.7182818)

0 .69314718 .99999999

返回乙個以n1為底n2的對數

sql> select log(2,1),log(2,4) from dual;

log(2,1) log(2,4)

0 2返回乙個n1除以n2的餘數

sql> select mod(10,3),mod(3,3),mod(2,3) from dual;

mod(10,3) mod(3,3) mod(2,3)

1 0 2

返回n1的n2次方根

sql> select power(2,10),power(3,3) from dual;

power(2,10) power(3,3)

1024 27

按照指定的精度進行捨入

sql> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;

round(55.5) round(-55.4) trunc(55.5) trunc(-55.5)

56 -55 55 -55

取數字n的符號,大於0返回1,小於0返回-1,等於0返回0

sql> select sign(123),sign(-100),sign(0) from dual;

sign(123) sign(-100) sign(0)

1 -1 0

返回乙個數字的正弦值

sql> select sin(1.57079) from dual;

sin(1.57079)

1 返回雙曲正弦的值

sql> select sin(20),sinh(20) from dual;

sin(20) sinh(20)

總結歸納 Oracle常用函式的總結

instring 9返回字串的長度 sql select name,length name addr,length addr sal,length to char sal from name length name addr length addr sal length to char sal 高幹...

總結歸納 Oracle常用函式的總結

author date 09 05 2007 description oracle function sql中的單記錄函式 1.ascii 返回與指定的字元對應的十進位制數 sql select ascii a a,ascii a a,ascii 0 zero,ascii space from du...

Oracle分析函式使用總結

1.使用評級函式 評級函式 ranking function 用於計算等級 百分點 n分片等等,下面是幾個常用到的評級函式 rank 返回資料項在分組中的排名。特點 在排名相等的情況下會在名次中留下空位dense rank 與rank不同的是它在排名相等的情況下不會在名次中留下空位cume dist...