欢迎投稿

今日深度:

oracle常用函数(1),oracle函数

oracle常用函数(1),oracle函数


1、返回与指定的字符对应的十进制数

select ascii('A') A,ascii('z') a,ascii('12') 一打,ascii(' ') kg from dual;


2、返回与指定十进制对应的字符

select chr(65) A,chr(122) z from dual;


3、连接两个字符串

select concat('熊大','熊二') constr from dual;--熊大熊二


4、将第一个字符变大写并返回字符串

select initcap('boat') upperfirst from dual;--Boat


5、将所有字符变成大写并返回字符串

select upper('boat') upperall from dual t;--BOAT


6、将所有字符变成小写并返回字符串

select lower('BoaT') lowerall from dual;--boat


7、INSTR(str1, str2, a,b)函数

用法:得到在str1中包含str2的位置。

 从左边开始检查,开始的位置为a,如果a是一个负数,那么是从右边开始进行扫描的,第b次出现的位置将被返回。

 a和b都缺省设置为1,这将会返回在str1中第一次出现str2的位置

select instr('zheshigeceshi','sh',-2,1) str from dual;--11
select instr('zheshigeceshi','sh',1,2) str from dual;--11


8、获取字符串长度

select length('boat') len from dual;--4


9、lpad(str,n,[pad_string])函数

     参数str:可以是字符或者参数

     参数n:是返回的字符串的长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;

     参数pad_string:是个可选参数,这个字符串是要粘贴到string的左边的字符串,如果这个参数未写,lpad函数将会在string的左边粘贴空格。

select rpad('boat',10,'*') from dual t;--boat******
select lpad('boat',10,'*') from dual t;--******boat


10、ltrim(x,y) 函数

用法:按照y中的字符一个一个截掉x中的字符,并且是从左边开始执行的

只要遇到y中有的字符, x中的字符都会被截掉,直到在x的字符中遇到y中没有的字符为止函数命令才结束,rtrim(y,x)同理

select ltrim('boat','bo') from dual;--at
select ltrim('booooobbbbobat','bo') from dual t;--at
select rtrim('boat','at') from dual;--bo
select rtrim('boaaaaaaaaatttttttaat','at') from dual;--bo

11、substr(string str, int a, int b)函数

       参数1:str 要处理的字符串

       参数2:a 截取字符串的开始位置(起始位置是0),为负值时表示从尾部开始算起

       参数3:b 截取的字符串的长度,如果b超出要处理的字符串的长度,并不会影响返回结果,系统按要处理字符串最大长度返回

       如果不用b,则取从a开始的剩余所有字符串

select substr('boatisgood',3,100) subs from dual;--atisgood
select substr('boatisgood',3) subs from dual;--atisgood
select substr('boatisgood',-3) subs from dual;--ood


12、替换函数

select replace('nba hupu 步行街怎么没有了','步行街','BXJ') from dual;--nba hupu BXJ怎么没有了



 


Oracle有什常用函数?

ABS(x) 函数,此函数用来返回一个数的绝对值。

ACOS(x)函数,返回X的反余弦值。X范围从1到-1,输入值从0到派,以弧度为单位。

ASIN(x)函数,返回X的反正弦值。X范围从1到-1,输入值从-PI/2到PI/2,以弧度为单位。

ATAN(x)函数,返回X的反正切值。输入值从-PI/2到PI/2,以弧度为单位。

BITAND(x,y)函数,返回X和Y的与结果。X和Y必须为非负整数。注意没有BITOR函数,但是在UTL_RAW包中有用 于RAW值的位操作符。

CEIL(x)函数,用来返回大于或等于X的最小整数。

COS(x)函数,返回x的余弦值。x是以弧度表示的角度。

COSH(x)函数,返回X的双曲余弦。

EXP(x)函数,与power(x,y)函数类似,不过不用指明基数,返回E的X次幂。E=2.71828183...

FLOOR(x)函数,用来返回小于或等于X的最大整数。

LN(x)函数,返回x的自然对数。x必须大于0。

LOG(x,y)函数,返回以X为底Y的对数。底必须是不为0和1的正数,Y是任意正数。

MOD(被除数,除数)求余函数,如果除数为0,则返回被除数。

POWER(x,y)函数,返回X的Y次幂。底X和指数Y都不必是正整数,但如果X是负数的话,Y必须是整数。

ROUND(x[,y])函数,返回舍入到小数点右边Y位的X值。Y缺省为0,这将X舍入为最接近的整数。如果Y是负数, 那么舍入到小数点左边相应的位上,Y必须为整数。

SIGN(x)函数,此函数用来返回一个数的正负值,若为一个正数则返回1,若为一个负数则返回-1,
若为0则仍返回0,有点像把模拟量数字化的意思。

SIN(x)函数,返回X的正弦。x是以弧度表示的角度。

SINH(x)函数,返回x的双曲正弦。

SQRT(x)函数,返回x的平方根,x不能是负数。

TAN(x)函数,返回x的正切。x是以弧度表示的角度。

TANH(x)函数,返回x的双曲正切。

TRUNC(x[,y])截取值函数,Y缺省为0,这样X被截取成一个整数。如果Y为负数,那么截取到小数点左边相应位置

WIDTH_BUCKET(x,min,max,num_buckets) 只能在SQL语句中使用。

使用WIDTH_BUCKET可以根据输入参数创建等长的段。范围MIN到MAX被分为num_buckets节,每节有相同的大小。返回X所在的那一节。如果X小于MIN,将返回0,如果X大于或等于MAX,将返回num_buckets+1.MIN和MAX
都不能为NULL,num_buckets必须是一个正整数。如果X是NULL,则返回NULL。
 

学习oracle

SQLServer和Oracle的常用函数对比

1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual

2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual

3.取整(小)
S:select floor(-1.001) value
O:select floor(-1.001) value from dual

4.取整(截取)
S:select cast(-1.002 as int) value
O:select trunc(-1.002) value from dual

5.四舍五入
S:select round(1.23456,4) value 1.23460
O:select round(1.23456,4) value from dual 1.2346

6.e为底的幂
S:select Exp(1) value 2.7182818284590451
O:select Exp(1) value from dual 2.71828182

7.取e为底的对数
S:select log(2.7182818284590451) value 1
O:select ln(2.7182818284590451) value from dual; 1

8.取10为底对数
S:select log10(10) value 1
O:select log(10,10) value from dual; 1

9.取平方
S:select SQUARE(4) value 16
O:select power(4,2) value from dual 16

10.取平方根
S:select SQRT(4) value 2
O:select SQRT(4) value from dual 2

11.求任意数为底的幂
S:select power(3,4) value 81
O:select power(3,4) value from dual 81

12.取随机数
S:select rand() value
O:select sys.dbms_random.value(0,1) value from dual;

13.取符号
S:select sign(-8) value -1
O:select sign(-8) value from dual -1
----------数学函数

14.圆周率
S:SELECT PI() value 3.1415926535897931
O:不知道

15.sin,cos,tan 参数都以弧度为单位
例如:select sin(PI()/2) value 得到1(SQLServer)

16.Asin,Acos,Atan,Atan2 返回弧度

17.弧度角度互换(SQLServer,Oracle不知道)
DEGREES:弧度-〉角度
RADIANS:角度-〉弧度

---------数值间比较

18. 求集合最大值
S:select max(value) value from
(select 1 value......余下全文>>
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2344.html NewsArticle oracle常用函数(1),oracle函数 1、返回与指定的字符对应的十进制数 select ascii(A) A,ascii(z) a,ascii(12) 一打,ascii( ) kg from dual; 2、返回与指定十进制对应的字符 select chr(65) A,chr(122) z from dua...
评论暂时关闭