Oracle 认证专员(OCA)
2.3.7 ORACLE 中函数:
ORACLE 已经内建了许多函数,不同的函数有不同的作用和用法,有的函数只能作用在一个记录行上,有的能
够作用在多个记录行上,不同的函数可能处理不同的数据类型。常见的有两类,单行函数和分组函数。
单行函数:
单行函数
分
类
函数 功能 示例
字
符
函
数
LPAD(<c1>,<i>[,<c2>])
在字符串 c1 的左边添加字符串 c2 直到 c1 字符
串的长度等于 i。
SELECT LPAD(‘Hello!’,8,’ ’)
leftpad,RPAD(‘Hello!’,8,’ ’) rightpad
FROM DUAL;
RPAD(<c1>,<i>[,<c2>])
在字符串 c1 的右边添加字符串 c2 直到 c1 字符
串的长度等于 i。
LOWER(<c1>)
把字符串 c1 转换为小写
SELECT LOWER(ename) one,UPPER(ename) two,
INITCAP(ename) FROM EMP;
UPPER(<c1>)
把字符串 c1 转换为大写
INITCAP(<c1>)
把 c1 字符串的每一个单词的第一个字母转换
成大写字母
LENGTH(<c1>)
返回字符串 c1 的长度
SELECT LENGTH(‘How are you’) FROM DUAL;
SUBSTR(<c1>,<i>[,<j>])
返回字符串 c1 中从第 i 个位置开始的 j 个字符
(向右)。如果省略 j,则返回 c1 中从第 i 个
位置开始的所有字符。如果 j 为负,则返回字
符串 c1 中从第 i 个位置开始的 j 个字符(向
左)。
SELECT SUBSTR(‘Hello,World’,1,5) FROM DUAL;
INSTR(<c1>,<c2>[,<i>[,<j>]])
在 c1 中从位置 i 开始查找 c2 在 c1 中出第 j 次
的位置,i 可 以 为 负 (此时,从 c1 的 尾 部 开
始)。
SELECT INSTR(‘Mississippi’,’i’,3,3) FROM
DUAL; 返回结果 11。
SELECT INSTR(‘Mississippi’,’i’,-2,3) FROM
DUAL; 返回结果 2。
LTRIM(<c1>,<c2>)
从 c1 前面开始去掉出现在 c2 的中任何前导字
符集。
SELECT LTRIM(‘Mississippi’,’Mis’) FROM
DUAL; 返回结果’ppi’。
SELECT RTRIM(‘Mississippi’,’ip’) FROM
DUAL; 返回结果’Mississ’。
RTRIM(<c1>,<c2>)
从 c1 后面开始去掉出现在 c2 的中任何前导字
符集。
数
学
函
ABS(<n>)
返回 n 的绝对值
SELECT ABC(-2),ABS(2) FROM DUAL;
ROUND(<n1>,<n2>)
将 n1 的小数点后保留 n2 位(四舍五入)并返
回。如果 n2 小于零,n1 舍入到小数点左边。
SELECT ROUND(12345.678,-2),
评论0