数据库字符函数的理解及使用

字符函数

注:使用数据库中特有的dual(虚拟表)表进行下列字符函数的验证;

1.UPPER(|字符串):将字符串全部转换位的大写;

2.LOWER(|字符串):将字符串全部转化为小写;

SELECT UPPER('king'),LOWER('KING1')

FROM dual;

查询smith”的完整信息

SELECT *

FROM emp

WHERE ename=UPPER('smith');

3.INITCAP(|字符串,字符串):将字符串的开头首字母大写;

查询所有雇员的姓名,要求每个雇员的姓名以首字母大写形式出现:

SELECT ename 原始姓名, INITCAP(ename) 姓名开头首字母大写

FROM emp;

4.REPLACE(|字符串,新的的字符串):使用新得字符串替换旧的字符串;

查询所有雇员姓名,但是要求将雇员姓名中所有字母A替换为字母”_”:

SELECT ename 原始姓名, REPLACE(ename, 'A', '_') 替换后姓名

FROM emp;

5.LENGTH(|字符串):求出字符串的长度;

查询出所有雇员名字的长度

select ename, LENGTH(ename) 名字的长度

FROM emp;

查询出所有雇员中名字长度等于5的:

SELECT ename

FROM emp

WHERE LENGTH(ename)=5;

6.SUBSTR(|字符串,开始点[长度]):字符串截取;

查询雇员姓名前三个字母是JAM”的雇员姓名:

SELECT *

FROM emp

WHERE SUBSTR(ename,0,3)='JAM';

查询所有10部门雇员的姓名,但是不显示每个雇员姓名的前三个字母:

SELECT ename 原名字 , SUBSTR(ename, 4) 现在的名字

FROM emp

WHERE deptno=10;

显示每个雇员姓名的后三个字母:

第一种表示方法:

SELECT ename , SUBSTR(ename, LENGTH(ename)-2)

FROM emp;

第二种表示方法:

SELECT ename , SUBSTR(ename,-3)

FROM emp;

 

两种截取方式:

A.从指定位置截取到结尾:SUBSTR(|字符串,截取开始点);

B.截取部分字符:SUBSTR(|字符串, 截取开始点, 截取结束点);

注:数据库中,下标是从1开始的,如果写的是0,那么自动转换为1开始;

7.CHR(数字):给出一个数字,并返回与之对应的字母;

SELECT CHR(65)

FROM dual;

8.ASCII(字符):返回字符对应的的十进制数字;

SELECT ASCII('A') A的值

FROM dual;

9.RPAD(|字符串,长度,填充字符)

LPAD(|字符串, 长度,填充字符):在右或者左填充指定长度的字符串;

字符串右填充:

SELECT ename, RPAD(ename, 6,'*')

FROM emp;

字符串左填充:

SELECT ename, LPAD(ename, 6,'*')

FROM emp;

组合使用左右都填充:

SELECT ename, RPAD(LPAD(ename, 9,'*'), 15, '*')

FROM emp;

10.LTRIM(字符串)RTRIM(字符串):去掉左或者右空格;

去掉左空格

SELECT '  WANGJIJIE  ' 原始字符串, LTRIM('  WANGJIJIE  ')

FROM dual;

去掉右空格:

SELECT '  WANGJIJIE  ' 原始字符串, RTRIM('  WANGJIJIE  ')

FROM dual;

11.TRIM(|字符串):去掉左右空格;

去掉左右空格

SELECT '  WANGJIJIE  ' 原始字符串, TRIM('  WANGJIJIE  ')

FROM dual;

 

12.INSTR(|字符串,要查找的字符串,开始位置,出现位置):查找一个子字符串是否在指定位置上出现;

注:如果查找到字符串,就返回字符串出现的位置,查找不到就返回0

SELECT INSTR('MLDN JAVA', 'MLDN') 查找的到,

      INSTR('MLDN JAVA','JAVA')查找的到,

      INSTR('MLDN JAVA','JIJIE')查找不到

FROM DUAL;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值