首页 > 代码库 > orcal常用函数

orcal常用函数

orcal常用函数

1.得到字符串中的第一个字符的  ASCII  值 

  1. ASCII(STR)  
  2. select ASCII(‘ABCD‘) FROM DUAL;  
  3. 结果: 65  



2.得到数值  N  指定的字符 

  1. CHR(n)  
  2. select CHR(68) from dual;  
  3. 结果:D  



3.连接两个字符串  

  1. CANCAT(char1,cahr2)  和 ||  
  2. select concat(‘abc‘,‘defg‘) from dual;  
  3. select ‘abc‘||‘defg‘ from dual;  
  4. 结果: ‘abcdefg‘  



4.将列中的数字代替为字符串 

  1. DECODE(char,n1,Char1,n2,char3...)  
  2. select decode(day,1,‘SUN‘,2,‘MON‘) from dual  
  3. 结果:if day==1 return SUN ..==2 return MON  



5.首字母大写  

  1. INITCAP(char)  
  2. select initcap(‘abcdef‘) from dyal  
  3. 结果:Abcdef  



6.字符长度   

  1. LENGTH(char)  
  2. select length(‘ABCDEF‘) from dual  
  3. 结果: 5  



7.转小写   

  1. Lower(char)  
  2. select lower(‘ABCDEFG‘) from dual  
  3. 结果: abcdef  



8.左填充字符串 达到长度N   

  1. LPAD(chard,n,char2)  
  2. select LPAD(‘ABCDEF‘,10,‘123456‘) from dual  
  3. 结果:1234ABCDEF  



9.从左边去掉匹配的字符串   

  1. LTRIM(char,set)  
  2. select LTRIM(‘cdcdcEFG‘,‘cd‘) from dual  
  3. 结果:EFG  



10.首字符大写其余小心   

  1. NLS_INITCAP(char)  
  2. NLS_LOWER(char)  
  3. NLS_UPPER(char)  
  4. select NLS_LOWER(‘AAA‘) from dual;  
  5. 结果: aaa  



11.替换部分字符   

  1. REPLACE(ch1,ch2,ch3) :使用ch3替换ch2,替换后结果放在ch1中  
  2. select replace(EMP_NO,‘123‘,‘345‘) from dual  
  3. 结果:xxx1234--- xxx3454  



12.右填充字符串 达到长度N    

  1. RPAD(ch1,ch2)  
  2. select rpad(‘abcd‘,‘DEF‘) form dual  
  3. 结果:abcdDEF  



13.从右边去掉匹配字符   

  1. RTRIM(ch1,set)  
  2. select rtrim(‘ABCDEF‘,‘EF‘) from dual;  
  3. 结果:ABCD  



14.substr 截取字符串从 M 开始的 N个字符   

  1. SUBSTR(ch1,m,n) //oralce的字符下标从 1 开始  
  2. select substr(‘abcdef‘,2,3) from dual  
  3. 结果:bcd   
  4. select substr(‘山大佛年‘,2,3) from dual  
  5. 结果:大佛年  



15.substrb(char,M,n)  

  1. SUBSTR(ch1,m,n) //oralce的字符下标从 1 开始  
  2. select substrb(‘abcdef‘,2,3) from dual  
  3. 结果:bcd   
  4. select substrb(‘山大佛年‘,2,3) from dual  
  5. 结果:空  



16.translate(ch1,ch2,ch3)   

  1. 将ch1中的ch2用ch3 代替  
  2. select translate(‘ABCDEFGH‘,‘DE‘,‘MN‘) from dual  
  3. 结果:ABCMNFGH  



17.UPPER(ch)   

  1. 将字符串全部大写  
  2. select upper(‘abcdef‘) from dual  
  3. 结果:ABCDEF  



18.ADD_MONTHS(d,n) 

  1. 将N个月添加到D日期  
  2. select ADD_MONTHS(sysdate,5) from dual;  
  3. 结果:距今后的5个月  



19.LAST_DAY(d)   

  1. 得到D日期的月份后的最后一天的日期  
  2. select LAST_DAY(sysdate) from dual  
  3. 结果:当月后的最后一天  



20.MONTH_BERWEEN(d1,d2)   

  1. 得到两个日期之间的月数  
  2. select MONTHS_BETWEEN(sysdate,sysdate+5) from dual  
  3. 结果:0  



21.NEXT_DAY(d,ch)   

  1. 得到比日期D晚的由ch命名的第一个周日的日期  
  2. select NEXT_DAY (sysdate,‘星期一‘) FROM DUAL;   
  3. select NEXT_DAY (sysdate,1) FROM DUAL;   
  4. 结果:  



22.SYSDATE   

  1. select sysdate from dual;  
  2. 结果:系统时间  



23.TO_CHAR(D,FMT)   

  1. 将日期D转换为FMT字符串  
  2. select to_char(sysdate,‘yyyy/mm/dd‘) from dual  
  3. 结果:  



24.to_date(char,fmt)  

  1. 将字符串char按fmt的格式转换  
  2. select to_date(‘2010-08-24‘,‘yyyy-mm-dd‘) from dual  
  3. 结果:  



25.ABS(N)  

  1. 的到N的绝对值  
  2. select abs(-6) from dual;  
  3. 结果:6  



26.CELL(n)   

  1. 得到大于或等于N的最大整数  
  2. select CELL(5.6) from dual  
  3. 结果:6  



27.COS(n)   

  1. 的到 N 的余弦值  
  2. select COS(1) from dual;  
  3. 结果:  



28.SIN(n)   

  1. 得到N的正弦值  
  2. 结果:  



29.COSH(n)   

  1. 的到N的双曲余弦值  
  2. select COSH(1) from dual  
  3. 结果:  



30.EXP(N)   

  1. 的到 N的e的N次幂  
  2. select exp(1) from dual  
  3. 结果:  



31.FLOOR(N)   

  1. 得到小于或等于的最小整数  
  2. select FLOOR(5.6) from dual;  
  3. 结果:5  



32.LN(N)   

  1. 得到N的自然对数  
  2. select LN(1) from dual  
  3. 结果:  



33.Log(M,N)   

  1. 得到以M为底N的对数  
  2. select log(2,8) from dual;  
  3. 结果:  



34.MOD(M,N)   

  1. 得到M除以N的余数  
  2. select MOD(100,7) from dual  
  3. 结果:2  



35.POWER(M,N)   

  1. 得到M的N次幂  
  2. select POWER(4,3) from dual  
  3. 结果:64  



36.ROUND(M,N)   

  1. 得到N舍入到小数点后的M位  
  2. select (78.876532,2) from dual  
  3. 结果:78.88  



37.SIGN(N)   

  1. select SIGN(99) from dual  
  2. 当N<0 时 返回 -1  
  3. 当N>0 时 返回 1  
  4. 当N=0 时 返回 0  
  5. 结果:  



38.SING(n)   

  1. 得到N的双曲线正弦值  
  2. select  SINH(1) from dual  
  3. 结果:  



39.SORT(N)   

  1. 得到N的平方根N>0  
  2. select sort(9) from dual  
  3. 结果:3  



40.TAN(N)   

  1. 得到N的正切值  
  2. select TAN(0) from dual  
  3. 结果:  



41.TANH(n)   

  1. 得到N的双曲线正切值  
  2. select TANH(0) from dual  
  3. 结果:  



42.TRUNC(N,M)   

  1. 得到在M位截断的N的值  
  2. select TRUNC(7.7788,2) from dual  
  3. 结果:7.77  



43.COUNT()   

  1. 计算满足条件的记录数  
  2. select count(*) from table where col1=‘AAA‘  
  3. 结果:  



44.Max  

  1. 对指定的列求最大值  
  2. select MAX(col1) from table  
  3. 结果:  



45.Min 

  1. 得到指定的列值的最小值  
  2. select min(col) from dual  
  3. 结果:  



46.AVG  

  1. 求平均值  
  2. select avg(col1) from table  
  3. 结果:  



47.SUM  

  1. 计算列的总和  
  2. select sum(col1) from dual  
  3. 结果:  



48.TO_NUMBER(char)  

  1. 将字符转换为数值  
  2. select TO_NUMBER(‘999‘) from dual;  
  3. 结果:999  



49.NVL(exp1,exp2)  

    1. 若exp1是null 则返回 exp2 否则返回 exp1  
    2. select  name,nvl(to_char(comm),‘not application‘) from scott.emp  
    3. 结果:  

orcal常用函数