–一.字符型函数
----1.ASCII©和CHR(I)函数,字符和ASCII之间的转换
SELECT ASCII(‘Z’) Z FROM DUAL;
SELECT CHR(90), (32) S FROM DUAL;
----2.CONCAT(S1,S2) 函数, S2连接到S1后
SELECT CONCAT('Hello ',‘World’) INFOMATION FROM DUAL;
----3.INITCAP(S)函数, 将字符串中每个单词第一个字母大写, 单词中其他字母小写
SELECT INITCAP(‘oh my god’) INFOMATION FROM DUAL;
----4.INSTR(S1, S2[,I][,J]) 返回字符串S2在字符串s1中第j次出现的位置, 从s1第i个字符开始搜索, 若没找到返回0, i, j默认值1
SELECT INSTR(‘ORACLE 11G’,‘1’,3,2) ADDRESS FROM DUAL;
----5.LENGTH(S) 函数, 返回字符串s的长度, 若s为null则返回null
SELECT LENGTH(‘HENGJUNA’) LEN FROM DUAL;
----6. LOWER(S)函数和UPPER(S)函数, 分别返回字符串的小写形式和大写形式
SELECT LOWER(‘HENGJUNA’) s1, UPPER(‘hengjuna’) s2 FROM DUAL;
----7.LTRIM(S1,S2) 函数, RTRIM(S1,S2)函数, TIRM(S1, S2)函数, 分别用于除去s1左侧s2, s1右侧s2, s1左右两侧s2, 注意trim()函数写法不同
SELECT LTRIM(’###Eas###’,’#’) LEFT, RTRIM(’###East###’,’#’) RIGHT, TRIM(’#’ FROM ‘###East###’) TWO FROM DUAL;
----8. REPLACE(S1, S2,[,S3]) 使用s3替换掉s1中的s2
SELECT REPLACE(‘Bad Luck Bad Gril’,‘Bad’,‘Good’) REP FROM DUAL;
----9.SUBSTR(S,I[,J]) 从s的第i个位置开始截取长度为j的字符串, 若j为空则截取到尾部
SELECT SUBSTR(‘MessageBox’,8,3) FROM DUAL;
–二. 数字类函数
ABS(N), 返回n的绝对值
CEL(N)返回大于或者等于n的最小整数
COS(N)返回n的余弦值, n为弧度
EXP(N)返回e的n次幂
FLORR(N)返回小于或等于n的最大整数
LOG(N1, N2)返回以n1为底, n2的对数
MOD(N1, N2)返回n1对n2取模
POWER(N1, N2)返回n1的n2次方
ROUND(N1, N2)返回舍入小数点右边n2位的n1的值,n2默认值为0
SIGN(N)若n小0返回-1, 若n等于0返回0, 若n为正数返回1
SIN(N)返回n的正弦值
SORT(N)返回n的平方根
TRUNC(N1, N2)返回结尾到n2位小数的n1的值, n2默认值为0, 当n2默认值会将n1截为整数
–三.日期和时间类类函数
----1.SYSDATE()函数 返回系统当前日期(包括时间)
SELECT SYSDATE AS 日期 FROM DUAL;
----2. ADD_MONTHS(D,I) 返回当前日期加上i个月后的结果
SELECT ADD_MONTHS(SYSDATE,6) AS 日期+6 FROM DUAL;
–四.转换类函数
CHARTORWIDA(S)将字符串s转换为RWID数据类型
CONVERT(S, ASET[,BSET])该函数将字符串s有bset字符集转换为aset字符集
ROWIDTOCHAR() 该函数将ROWID数据类型转换为CHAR类型
TO_CHAR(X,[,FORMAT]) 该函数将表达hi转换为字符串, format表示字符串格式
TO_DATE(S,[,FORMAT[LAN]])将字符串s转换为date类型, format表示字符串格式, lan表示所使用的语言
TO_NUMBER(S,[,FORMAT[LAN]]) 该函数将返回字符串s所代表的数字, 返回值按format格式进行显示, format表示字符串格式, lan表示所使用的语言
----1.TO_CHAR(X,[,FORMAT])函数
SELECT SYSDATE AS 默认格式, TO_CHAR(SYSDATE,‘YYYY-MM-DD’)AS 转换日期 FROM DUAL;
SELECT TO_CHAR(SYSDATE, ‘yyyymmdd’) INTO V_TRADE_DATE FROM DUAL;
SELECT TO_CHAR(SYSDATE, ‘HH24:MI:SS’) INTO V_TRADE_TIME FROM DUAL;
----2.TO_NUMBER(S,[,FORMAT[LAN]])
SELECT TO_NUMBER(‘18F’,‘XXX’) AS十进制数 FROM DUAL;
–五.聚合类函数
AVG(X[DISTINCT|ALL])
COUNT(X[DISTINCT|ALL])
MAX(X[DISTINCT|ALL])
MIN(X[DISTINCT|ALL])
SUM(X[DISTINCT|ALL])
VARIANCE(X[DISTINCT|ALL])返回列表项目的统计方差, 列表项目可以是一个列或多个列的表达式
STDDEV(X[DISTINCT|ALL])返回列表项目的标准偏差, 列表项目可以是一个列或多个列的表达式