oracle 单行函数
常用的处理字符串的函数有如下:
No. |
函数名 |
含义 |
1 |
UPPER(c1) |
将字符串全部转为大写 |
2 |
LOWER(c1) |
将字符串全部转为小写 |
3 |
INITCAP(c1) |
将字符串的首字母转为大写 |
4 |
LENGTHC(c1) |
返回字符串的长度 |
5 |
SUBSTR(c1,n1[,n2]) |
取得字符串的子串,n1是指定起始索引,n2是指定取多少个,如果不写n2,则取到最后。 |
6 |
REPLACE(c1,c2) |
字符串替换,c1是旧的子符,c2是新的子串 |
题目1:将字符串“WelcomeToZiBo”转换为大写。
Select upper(‘WelcomeToZiBo’) from dual; |
题目2:将emp表的雇员姓名全部转换为小写。
select lower(ename) from emp; |
注意:Oracle数据库是区分大小写的。
SqlPlus命令接收用户输入语法:
select &input from dual; |
注意:数字直接写,字符串单引号。
一般用户输入时不会写单引号,也不会考虑大小写问题。
select '&input' from dual; select upper('&input') from dual; |
题目3:由用户输入雇员姓名,然后显示雇员所有信息。
select * from emp where ename= upper('&input') |
题目4:查询emp表所有的雇员姓名,返回的姓名首字母大写。
select initcap(ename) from emp; |
题目5:查询雇员姓名长度为5的所有雇员的雇员编号、雇员姓名、职位。
select empno,ename,job from emp where length(ename) =5; |
题目6:取得字符串'WelcomeToZiBo'的子串'ZiBo'。
select substr('WelcomeToZiBo',10,4) from dual; |
题目7:取得字符串'WelcomeToZiBo'的子串'come'。
select substr('WelcomeToZiBo',4,4) from dual; |
注意:Oracle的索引是从1开始的,及时设置了0也会从1开始。
题目8:取得emp表每位雇员的雇员姓名、雇员姓名的前两位。
select ename, substr(ename,1,2)from emp; |
题目9:取得emp表每位雇员的雇员姓名、雇员姓名的后两位。
select ename,substr(ename,-2) from emp; |
题目10:取得emp表每位雇员的雇员姓名、雇员姓名的前两位+后两位作为密码。
Select ename, substr(ename,1,2)||substr(ename,-2) as passwd from emp |