首页 > 代码库 > SQL内置函数

SQL内置函数

一、字符型函数(只是记录一些容易忘记的基本函数)

1、大小写转换函数
  INITCAP:将字符串中每一个单词的第一个字母转换为大写,其他均为小写
    SELECT INITCAP(column) FROM DUAL
2、字符串处理函数
  INSTR:从一个字符串中查找一个给定字符的数字位置
    SELECT INSTR(String,‘K‘) FROM DUAL
  LPAD:用给定的字符从左填充字符串到给定的长度

  RPAD:用给定的字符从又填充字符串到给定的长度

3、字符串替代函数
  REPLACE(string,‘被替换字符串‘,‘替换的字符串‘)
    SELECT REPLACE(DATA_2,‘6‘,‘G‘) FROM DUAL
4、数字型函数
  ROUND(x,y):四舍五入,保留小数点
    SELECT ROUND(3.1247,2) FROM DUAL --->得到3.12
  TRUNC(x,y):截断x的值到y位小数点
    SELECT TRUNC(3.5647,2) FROM DUAL --->得到3.56
  MOD(x,y):返回x除以y的余数
    SELECT MOD(5,3) FROM DUAL --->得到3
5、日期时间函数(SYSDATE)
  MONTHS_BETWEEN(date1,date2):计算两个日期的月数
    SELECT MONTHS_BETWEEN(TO_DATE(‘2016-09-10‘,‘YYYY-MM-DD‘),TO_DATE(‘2016-03-09‘,‘YYYY-MM-DD‘)) FROM DUAL;
  ADD_MINTHS(date,n):添加n天到date,必须是整数,可以是负数
    SELECT MONTHS_BETWEEN(TO_DATE(‘2016-09-10‘,‘YYYY-MM-DD‘),TO_DATE(‘2016-03-09‘,‘YYYY-MM-DD‘)) FROM DUAL;
  NEXT_DAY(date,char):计算date之后的下一个周(char)的指定天的日期
    SELECT NEXT_DAY(SYSDATE,‘星期五‘) FROM DUAL;
  LAST_DAY(date):计算包含date的月的最后一天的日期
    SELECT LAST_DAY(SYSDATE) FROM DUAL;
  ROUND(date,‘frm‘):返回格式化模式frm四舍五入到指定单位date
    SELECT ROUND(SYSDATE,‘YEAR‘) FROM DUAL;
  TRUNC(date,‘frm‘):返回格式化模式截断到指定单位的带天的时间部分date
    SELECT TRUNC(SYSDATE,‘YEAR‘) FROM DUAL;
6、类型转换函数
  CHARTOROWID:将包含外部格式的ROWID的CHAR或者VARCHAR2数值转换为ROWID
  CONVERT:将一个字符集转换到另一个字符集
  HEXTORAW:将十六进制字符串转换为RAW
  ROWIDTOCHAR:将ROWID转换为字符串表示形式
  TO_BLOB:将指定的值转换成BLOB类型值
  TO_CHAR(date,日期格式):将日期型或数字型的值转换为VARCHAR2的类型值
    SELECT TO_CHAR(SYSDATE,‘YYYY-MM-DD HH:MM:SS‘) FROM DUAL;
  TO_CLOB:将指定的值转换成CLOB类型的值
  TO_DATE:将CHAR或VARCHAR2字符串强制转换为日期值
    SELECT TO_DATE(‘20160902‘,‘YYYY-MM-DD‘) FROM DUAL;
  TO_LABEL:将CHAR或VARCHAR2字符串强转为MLSLABLE
  TO_MULTI_BYTE:将任何单字节字符串转换为多字节字符串
  TO_NUMBER:将CHAR或VARCHAR2字符串强制转为NUMBER
    SELECT TO_NUMBER(‘$20160902‘,‘$999999999‘) FROM DUAL;
  TO_SINGLE_BYTE:将任何多字节字符串转为单字节字符串
7、分组函数
  AVG:返回列平均数
  COUNT:返回查询行总数
  SUM:返回列总和
  MIN:返回列最小值
  MAX:返回列最大值
8、其他函数
  NVL
  NVL2
  NULLIF
  COALESCE
  DECODE

 二、Oracle分析型函数

123

 

SQL内置函数