zoukankan      html  css  js  c++  java
  • Oracle常用内置函数

    转换函数
      to_char(d|n,fmt):把日期和数字转换为指定格式的字符串;
      to_number(x,fmt):把一个字符串转换为一个指定格式的数字;
     
    判空函数
      nvl(x,value):如果x为null,返回value,否则返回x;
      nvl2(x,value1,value2):若果x非空返回value1,否则返回value2;
     
    聚合函数
      avg():求平均值;
      sum():求和;
      min():求最小值;
      max():求最大值;
      count():统计数量;
     
    数字函数
      abs(n):返回数字n的绝对值;
      ceil(n):向上取整;
      floor(n):向下取整;
      round(n,[m]):四舍五入,m表示保留小数点后的多少位,可以用负数表示小数点前的位数;缺省则到整数位;
      trunc(n,[m]):截取数字,m表示小数点后的多少位,可用负数截取小数点前的位数;缺省则到整数位;
     
      sqrt(n):返回数字n的平方根,n必须大于0;
      power(n,m):返回数字n的m次方;
      exp(n):返回e的n次幂
      ln(n):返回数字n(n必须大于0)的自然对数;
      log(n,m):返回底数为n(除0及1的正整数)的m对数;
      mod(n,m):返回数字n/m的余数,如果m=0则返回n;
       
      cos(n):返回数字n(弧度)的余弦值;
      cosh(n):返回数字n的双曲余弦值;
      acos(n):返回数字n的反余弦值,结果的单位为弧度,n的取值范围为(-1,1);
      sin(n):返回数字n的正弦值;
      tan(n):返回数字n的正切值;
      tanh(n):返回数字n的双曲正切值;
      atan(n):返回数字n的反正切值;
      atan(n,m):返回数字n/m的反正切值;
     
    字符函数
      ascii(c):返回字符c的ascii值;
      chr(n):将ascii值转换为对应的字符;
      initcap(s):将字符串s的所有单词的首字母大写,其余小写;
      lower(s):将字符串s中所有的字符小写;
      upper(s):将字符串s中所有的字符大写;
      concat(s1,s2):将字符串s2连在s1后面,等同于操作符||;
      length(s):返回字符串s的长度;
     
      lpad(s1,n,s2):在字符串s1的左端填充字符串s2,直至填充后的s1的总长度为n,不指定s2则默认为空格,如果s1的长度大于n,则直接返回s1左端的n个字符;
      rpad(s1,n,s2):在字符串s1的右端填充字符串s2,用法同上;
      instr(s1,s2,n,m):取得s2在s1中的位置,n表示查找的起始位置,m表示匹配到的第几个;
      substr(s1,m,n):取得字符串s1中从m开始,长度为n的子字符串,m可为负数;
      ltrim(s1,set):从s1的左端开始逐一截掉字符,截掉的字符为set包含的字符,若在执行过程中遇到set中不存在的字符则函数停止,并返回被截后的s1;
      rtrim(s2,set):原理和ltrim相同,从s1的右边开始;
      trim(c FROM s1):从s1的两端截去字符c(只能是一个字符),原理同上;
      replace(s1,s2,s3):将字符串s1中的子串s2用s3替代;
      translate(s1,forms,tos):将字符串s1按照froms和tos的对应关系进行转换;froms表示原字符的集合,tos表示将要转换成的字符的集合,froms和tos按顺序进行对应;
        例:
          translate('about','abcd','1234') ;--12out
      regexp_substr(s1,pattern,position,occurrence,match_parameter):按照正则表达式pattern从s1字符串中的position位置开始,截取第occurrence次出现的匹配pattern的字符串,matche_parameter为匹配参数;
      regexp_replace(s1,pattern,str,position,occurrence,match_parameter):按照正则表达式pattern从s1字符串中的position位置开始,替换掉第occurrence(可以为0,表示全文匹配)次出现的满足正则的字符串为str,matche_parameter为匹配参数;
      regexp_instr(s1,pattern,position,ocurrence,return_option,match_parameter):和instr类似,用于返回匹配正则表达式的字符串的开始位置,其中的参数return_option指定返回的位置,0表示返回出现的第一个字符的位置,1表示返回字符之后发生的位置;
      regexp_like(s1,pattern):和like类似,只用于条件表达式;
     
    日期函数
      sysdate:返回系统当前时间;
      systimestamp:返回系统当前日期时间和时区;
      current_date:返回当前时区所对应的日期和时间;
      current_timestamp:返回当前时区所对应的日期时间;
      localtimestamp:返回当前时区所对应的日期时间;
      systimestamp:返回系统当前日期时间和时区;
      sessiontimezone:返回当前所在的时区;
      dbtimezone:返回资料库所在的时区;
     
      add_months(d,n):返回指定日期d之后(或之前)的n个月所对应的日期时间;n大于0表示之后;
      extract():从指定的日期里取出所需要的特定数据,如日期、月、时间等;例:extract(month from sysdate)
      last_day(d):返回日期d所在月份的最后一天;
      next_day(d,day):返回日期d之后的下一个day 例:next_day(sysdate,'星期五') --表示今天之后的下一个星期五;
      round(d,fmt):返回日期时间的四舍五入结果,fmt指定四舍五入的维度,可为year,month,day,例:round(to_date('2018-05-17','yyyy-mm-dd'),'month');--2018/6/1
      trunc(d,fmt):用于截断日期数据,fmt指定截断的维度;
      to_timestamp(chr,nls_param):将指定格式的日期时间字符串转为timestamp类型;例:to_timestamp('2018-05-17 15:18:00','yyyy-mm-dd hh24:mi:ss')
      to_date():将一个代表时间的字符串按指定格式转换为date类型
      month_between(d1,d2):返回两个日期间相差的月份数
     
    数据库系统相关函数
      sys_context(context,attribyte):返回应用上下文特定属性。
      uid:当前用户的id号;
      user:返回当前会话对应的数据库名;
      userenv(parameter):返回当前上下文指定的属性信息;
      sys_guid():生成类型为raw的16字节的唯一标识符;每次调用会有不同的值;
     
  • 相关阅读:
    排序算法的实现
    图——广度优先遍历(邻接矩阵存储)
    最大子列和问题-4种解法
    PATB 1015. 德才论 (25)
    PATB 1018. 锤子剪刀布
    PATB 1019. 数字黑洞 (20)
    常用协议的默认端口号
    统一资源定位符URL
    hdoj1009 FatMouse' Trade——贪心算法
    hdoj2037 贪心算法——今年暑假不AC
  • 原文地址:https://www.cnblogs.com/waynelo/p/9107653.html
Copyright © 2011-2022 走看看