orcale函数

字符函数
    1.ASCII 返回与指定的字符对应的十进制数;
  select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;


    2.CHR 给出整数,返回对应的字符;
  select chr(54740) zhao,chr(65) chr65 from dual;


    3.CONCAT 连接两个字符串;字符串处理函数。
  select concat('010-','88888888')||'转23' 高乾竞电话 from dual;


    4.INITCAP 返回字符串并将字符串的第一个字母变为大写;
  select initcap('smith') upp from dual;


    5.INSTR(C1,C2,I,J) 在一个字符串中搜索指定的字符,返回发现指定的字符的位置;
  select instr('oracle traning','ra',-1,2) instring from dual;


    6.LOWER 返回字符串,并将所有的字符小写
  select lower('AaBbCcDd')AaBbCcDd from dual;


    7.UPPER 返回字符串,并将所有的字符大写
  select upper('AaBbCcDd') upper from dual;


    8.RPAD和LPAD(粘贴字符) 
  RPAD 在列的右边粘贴字符 
  LPAD 在列的左边粘贴字符
  select lpad(rpad('gao',10,'*'),17,'-')from dual;
    9.LTRIM和RTRIM 
  LTRIM 删除左边出现的字符串 
  RTRIM 删除右边出现的字符串
  select ltrim(rtrim(' gao qian jing ',' '),' ') from dual;


    10.SUBSTR(string,start,count) 从1开始数
    取子字符串,从start开始,取count个
  select substr('13088888888',3,8) from dual;


    11.REPLACE('string','s1','s2')
     string 希望被替换的字符或变量 
     s1 被替换的字符串
     s2 要替换的字符串
  select replace('HE LOVE YOU','HE','I') from dual;


    12.ABS
   返回指定值的绝对值
  select abs(100),abs(-100) from dual;


    13.ACOS 给出反余弦的值
  select acos(-1) from dual;


    14.ASIN 给出反正弦的值
  select asin(0.5) from dual;


    15.ATAN 返回一个数字的反正切值
  select atan(1) from dual;


    16.CEIL 返回大于或等于给出数字的最小整数
  select ceil(3.1415927) from dual;


    17.COS 返回一个给定数字的余弦
  select cos(-3.1415927) from dual;


    18.COSH 返回一个数字反余弦值
  select cosh(20) from dual;


    19.EXP 返回一个数字e的n次方根
  select exp(2),exp(1) from dual;


    20.FLOOR 对给定的数字取整数
  select floor(2345.67) from dual;


    21.LN 返回一个数字的对数值
  select ln(1),ln(2),ln(2.7182818) from dual;


    22.LOG(n1,n2) 返回一个以n1为底n2的对数 
  select log(2,1),log(2,4) from dual;


    23.MOD(n1,n2) 返回一个n1除以n2的余数
  select mod(10,3),mod(3,3),mod(2,3) from dual;


    24.POWER 返回n1的n2次方根
  select power(2,10),power(3,3) from dual;


    25.ROUND和TRUNC 按照指定的精度进行舍入
  select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;


    26.SIGN 取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
  select sign(123),sign(-100),sign(0) from dual;


    27.trim
  select trim('a' from 'ahappyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa') from dual;


    lengthb
  select lengthb('好人') from dual;


    length
  select length('好人') from dual;
    日期函数
    月份之数
  select floor("MONTHS_BETWEEN"(SYSDATE, "TO_DATE"('1997-05-18', 'yyyy-MM-dd'))) from dual;


    天
  SELECT floor(SYSDATE-"TO_DATE"('1997-05-18', 'yyyy-MM-dd')) from dual;  转换函数


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


    数字函数
    四舍五入 round     trun()截断
  SELECT round(12.45,1)from dual;

  

    转换函数: to_date(字符串)    to_char(数字)   to_number()


    通用函数
    nvl和nvl2滤空函数
  select sal*12 工资,comm 奖金,sal*12+nvl(comm,0) from emp;


  select sal, sal+NVL2(COMm,comm*2,0) from emp;


    decode  相当于case when then else end 
  select ename,decode(deptno,10,'开发部',20,'测试部',30,'财务部','保洁部') from dual
    分组函数:sum() count() avg() max() min()
    分析函数:rank(1 1 3)  row_nubmer(1 2 3)   desrank(1 1 2)

原文地址:https://www.cnblogs.com/wangbenqing/p/7545646.html