Oracle 字符函数和数字函数

字符函数是oracle中最常用的函数,首先我们来看看有哪些字符函数:前三种是大小写控制函数,即这类函数改变字符的大小写。其余的为字符控制函数,即这类函数控制字符。
(1)字符函数
lower(char):将字符串转化为小写的格式.
upper(char):将字符串转化为大写的格式.
initcap(char):将字符串转化为首字母大写.
length(char):返回字符串的长度。
substr(char,m,n):取字符串的长度;m代表从第m位开始取,n代表取n个的意思,不是代表取到第n个
replace(char1,search_string,replace_string)
instr(char1,char2,[,n[,m]])取子串在字符串的位置
cancat(char):将字符串连接起来,相当于“||”
lpad(char,m,’ * ’):左填充,m表示填充的位数,’ * ’表示用号填充
rpad(char,m,’ * ’):右填充,m表示填充的位数,’ * ’表示用号填充
trim(‘H’ from ‘HelloWorld’)去除空格或指定字符
eg:将所有员工的名字按小写的方式显示
SQL> select lower(ename) from emp;

eg:将所有员工的名字按大写的方式显示。
SQL> select upper(ename) from emp;

eg:显示正好为5个字符的员工的姓名。
SQL> select * from emp where length(ename)=5;

eg:显示所有员工姓名的前三个字符。
SQL> select substr(ename,1,3) from emp;

eg:显示所有员工的姓名,用“abc”替换所有“A”
SQL> select replace(ename,'A', 'abc') from emp;

(2)数学/字函数
数学函数的输入参数和返回值的数据类型都是数字类型的。
round(n,[m])该函数用于执行四舍五入,如果省掉m,则四舍五入到整数,如果m是正数,则四舍五入到小数点的m位后。如果m是负数,则四舍五入到小数点的m位前。
trunc(n,[m]) 该函数用于截取数字。若省掉m,就截去小数部分(等价于trunc(n,0)),如果m是正数就截取到小数点的m位后,若m是负数,则截取到小数点的前m位。
mod(m,n)该函数用于取余数
floor(n) 返回小于或是等于n的最大整数
ceil(n) 返回大于或是等于n的最小整数
eg:显示在一个月为30天的情况下,所有员工的日薪金,忽略余数。
SQL> select trunc(sal/30), ename from emp;

或者:
SQL> select floor(sal/30), ename from emp;

在做oracle测试的时候,可以使用dual表
select mod(10,2) from dual;返回结果是0

select mod(10,3) from dual;返回结果是1

posted @ 2022-01-13 10:30  IT6889  阅读(147)  评论(0编辑  收藏  举报