单行函数,嵌套函数及条件表达式
单行函数
单行函数:
操作数据对象
接受参数返回一个结果
只对一行进行变换
每行返回一个结果
可以转换数据类型
可以嵌套
参数可以是一列或一个值
-
字符函数
-
大小写控制函数(用到的关键字,lower,upper,initcap)
--将字符串转换为小写 select LOWER('ORACLE SQL') from dual; --将字符串转换为大写 select UPPER('oracle sql') from dual; --将每个单词的首字母大写 select initcap('oracle sql') from dual;
此处需要注意的是dual是一个虚拟表(又称伪表),用于测试sql语句中简单的数据运算或者简单的语句能否执行,除了这个虚拟表之外还有一些其他的虚拟列等之后的学习也会遇到
--查询lastname 为De Haan 的雇员信息 select * from employees where last_name= initcap('de haan');
-
字符控制函数
- concat 拼接字符串
- substr 分割字符串
- length 字符串长度计算
- instr 找出特定字符或者字符串(首字母位置)在字符串中的位置并返回
- lpad 在字符串左端以设定符号自动补齐未满位数
- rpad 在字符串右端以设定符号自动补齐未满位数
- trim 去除首位或者末尾的第一个字符,通常用来去除开头或结尾的空格
- replace 以一指定的字符替换字符串中的指定的另一字符
select concat('hello' ,'world') from dual; --substr arg1:要截取字符串 arg2:截取的开始位置 arg3:截取的长度 select substr('helloworld',2,5) from dual; --查找某一个字符或字符串在字符串中出现的位置 如果是一个字符串 则是首字母的位置 --如果查找的字符 或字符串不存在 则返回0 select instr('helloworld','wor') from dual; --LPAD RPAD 判断字符串的长度是=是否满足给定的长度 如果不足 则在左边或右边使用 --给定的字符来补充 SELECT LPAD('helloworld',15,'*') from dual; SELECT RPAD('helloworld',15,'*') from dual; --TRIM 表示去除字符串两端的空格 select length('helloworld ')from dual; select length(Trim('helloworld ')) from dual; --REPLACE 替换 select replace('hello world','l','L')from dual;
-
-
数字函数
ROUND: 四舍五入
如 ROUND(45.926, 2) 45.93
TRUNC: 截断
TRUNC(45.926, 2) 45.92
MOD: 求余
MOD(1600, 300) 100--ROUND括号中