欢迎投稿

今日深度:

oracle之常用简单函数(ONE)

oracle之常用简单函数(ONE)


oracle之常用简单函数(ONE)
 
  oracle中函数分为多行函数和单行函数,单行函数可以直接在plsql块中引用,但是多行函数只能在plsql块中的内嵌sql中引用。
 
   常用的单行函数有:字符函数、数字函数、转换函数、日期函数、正则表达式函数。
 
     一)字符函数
 
             1)ascii:把字符转换成ascii码值。
 
eg: 
 
[sql] 
 
SQL> select ascii('A'),ascii('b') from dual;  
  
ASCII('A') ASCII('B')  
---------- ----------  
        65         98  
  
SQL> </span>  
 
            2)length(x):该函数用于返回x字符串的长度:
 
eg:
 
          
 
[sql] 
SQL> select length('RHYS') FROM DUAL;  
  
LENGTH('RHYS')  
--------------  
             4  
  
SQL> 
           3) concat(x,y):该函数用户把字符串y追加到字符串x之后:
 
eg:
 
[sql] 
 
SQL> select concat('Rhys','Learn Oracle!') from dual;  
  
CONCAT('RHYS','LE  
-----------------  
RhysLearn Oracle!  
  
SQL>   
</span>  
 
          4)lower(x) && upper(x):该函数用于把字符串x由大小变为小写,另外upper(x):函数是把字符串x由小写便为大写显示:
 
eg:
 
[sql] 
 
SQL> select lower('RHYS') from dual;  
  
LOWE  
----  
rhys  
  
SQL> select upper('rhys') from dual;  
  
UPPE  
----  
RHYS  
  
SQL> 
          5)substr(x,y,z):该函数用于把字符串x按照从左到右y开始,然后截取z长度:
 
eg:
 
[sql] 
 
SQL> select substr('Hello Rhys Learn Oracle',6,4) from dual;  
  
SUBS  
----  
 Rhy  
  
SQL> 
           6)instr(x,find_string[,start][,occurrence]):该函数用户在字符串x中查找find_string字符,然后可以指定在x中的那个位置开始进行查找,也就是start位置,还可以指定查找find_string第occurrence出现的次数所在的位置。
 
eg:
 
[sql] 
 
SQL> select instr('hello rhys hello oracle','o',2,3) from dual;  
  
INSTR('HELLORHYSHELLOORACLE','O',2,3)  
-------------------------------------  
                                   18  
  
SQL>
 
          7)initcap(x):该函数用于把字符串x中的所有单词的首字母全部大写:
 
eg:
 
[sql]
 
SQL> select initcap('hello,oracle,hello,rhys') from dual;  
  
INITCAP('HELLO,ORACLE,H  
-----------------------  
Hello,Oracle,Hello,Rhys  
  
SQL> 
         8)replace (x,y,z):该函数用于在字符串中查找y,然后把y用z进行替换:
 
eg:
 
[sql] 
 
SQL> select replace('hello oracle,hello rhys','rhys','xiaohai  
  2  ') from dual;  
  
REPLACE('HELLOORACLE,HELLOR  
---------------------------  
hello oracle,hello xiaohai  
  
SQL> </span>  
         9)rpad(x,length,rpad_string):该函数用于对x进行右补齐,使其达到length的长度,默认的补齐方式为空格,另外还可以使用rpad_string字符进行补齐:
 
eg:
 
[sql] 
<span style="font-size:14px;">SQL> select rpad('Rhys',8) from dual;  
  
RPAD('RH  
--------  
Rhys  
  
SQL> select rpad('Rhys',8,'*') from dual;  
  
RPAD('RH  
--------  
Rhys****  
  
SQL> </span>  
 
 
           二)数字函数:
 
 
         1)abs(x);该函数用于返回x的绝对值:
 
eg:
 
[sql] 
SQL> select abs(-20000) from dual;  
  
ABS(-20000)  
-----------  
      20000  
  
SQL>    
           2)mod(x,y):该函数用于返回x除以y的余数:
 
eg:
 
[sql] 
SQL> select mod(5,2) from dual;  
  
  MOD(5,2)  
----------  
         1  
  
SQL>   
        3)ceil(x):该函数用于返回大于或等于x的最小整数值:
 
eg:
 
[sql] 
SQL> select ceil(22.4) from dual;  
  
CEIL(22.4)  
----------  
        23  
  
SQL>   
        4)floor(x):该函数用于小于或等于x的最大整数值:
 
eg:
 
[sql] 
SQL> select floor(22.4) FROM DUAL;  
  
FLOOR(22.4)  
-----------  
         22  
  
SQL>  
        5)power(x,y):该函数用于返回x的y此幂的值:
 
eg:
 
[sql] 
SQL> select power(2,3) from dual;  
  
POWER(2,3)  
----------  
         8  
  
SQL>   
        6)sqrt(x):该函数用户求x的平方根,x必须大于等于0
 
eg:
 
[sql] 
SQL> select sqrt(4) from dual;  
  
   SQRT(4)  
----------  
         2  
  
SQL>   
      7)round(x,【y】):求x的取整结果,如果指定y,那么说明在小数点的y处开始取整,如果y为负值,那么要在x的小数点向左y处取整。
 
eg:
 
 
 
[sql] 
<span style="font-size:14px;">SQL> select round(22.333,2) from dual;  
  
ROUND(22.333,2)  
---------------  
          22.33  
  
SQL> select round(22.333,-2) from dual;  
  
ROUND(22.333,-2)  
----------------  
               0  
  
SQL> select round (222.333,-2) from dual;  
  
ROUND(222.333,-2)  
-----------------  
              200  
  
SQL> select round(22.263,2) from dual;  
  
ROUND(22.263,2)  
---------------  
          22.26  
  
SQL> select round(22.263,1) from dual;  
  
ROUND(22.263,1)  
---------------  
           22.3  
  
SQL> </span>  
        8)sign(x):该函数用于检测数值的正负,如果数值为零,那么它会为零,如果数值为负数,那么它会为-1,如果数值为正数,那么结果为1:
 
eg:
 
[sql] 
<span style="font-size:14px;">SQL> select sign(-2),sign(0),sign(2) from dual;  
  
  SIGN(-2)    SIGN(0)    SIGN(2)  
---------- ---------- ----------  
        -1          0          1  
  
SQL> </span>  
        9)cos(x)求数值的余弦值
 
       10)acos(x)返回数字的反余弦值
 
         三)转换函数:
 
        1)to_char(x):把数字转换为字符串:
 
eg:
 
[sql] 
<span style="font-size:14px;">SQL> select ename,'this sal is '||to_char(sal) from emp;  
  
ENAME      'THISSALIS'||TO_CHAR(SAL)  
---------- ----------------------------------------------------  
WARD       this sal is 1250  
JONES      this sal is 2975  
MARTIN     this sal is 1250  
BLAKE      this sal is 2850  
SCOTT      this sal is 3000  
KING       this sal is 5000  
TURNER     this sal is 1500  
ADAMS      this sal is 1100  
JAMES      this sal is 950  
FORD       this sal is 3000  
MILLER     this sal is 2222  
  
11 rows selected.  
  
SQL> </span>  
      2)to_number(x)把字符串转换为数字:
 
eg:
 
[sql] 
<span style="font-size:14px;">SQL> select to_number('-$21,222.33','$99,999.99') from dual;  
  
TO_NUMBER('-$21,222.33','$99,999.99')  
-------------------------------------  
                            -21222.33  
  
SQL> </span>  
      3)cast(x as type);该函数用于指定x为type兼容性的类型;
 
eg:
 
[sql] 
<span style="font-size:14px;">SQL> select cast('1234' AS VARCHAR2(20)) || 'hello' from dual;  
  
CAST('1234'ASVARCHAR2(20)  
-------------------------  
1234hello  
  
SQL> </span>  
       4)asciistr(x):将任意字符串转换为数据库字符集的ASCII字符串
 
       5)bin_to_number(x):将二进制数字x转换为number类型。
 
 

www.htsjk.Com true http://www.htsjk.com/oracle/20926.html NewsArticle oracle之常用简单函数(ONE) oracle之常用简单函数(ONE) oracle中函数分为多行函数和单行函数,单行函数可以直接在plsql块中引用,但是多行函数只能在plsql块中的内嵌sql中引用。 常用的单...
相关文章
    暂无相关文章
评论暂时关闭