MySQL字符类函数

MySQL常见函数
在这里插入图片描述

1、概念:函数类似于java的方法(将实现某个功能的逻辑语句封装到方法中,对外暴露一个公开的名字,就是方法名)。

好处:
  1.隐藏类具体功能的实现细节
  2.提高代码的重用性

调用:
  SELECT 函数名(实参列表) (实参和形参的 个数、类型必须一致)
  FROM 表(根据需要:函数的参数用到表中的字段)
过程:调用该函数,把函数的逻辑语句执行完,将它的返回值显示出来。

2、分类:

1.单行函数:处理数据使用。传入一个参数,处理完后,最终会有一个返回值
如:CONCAT(str1,str2,…)、LENGTH(str)、IFNULL(expr1,expr2)等

2.分组函数:简称组函数
功能:做统计使用。传入一组参数,最终返回一个值。又称为统计函数、聚合函数。

1.单行函数: 输入一行,输出也还是一行,检索一行处理一次;
2.多行函数(组函数): 输入多行数据,输出是一个结果,检索出来的数据分成组后再进行处理;

根据参数类型不同,可以分为:
字符类函数: 是专门用于字符处理的函数,处理的对象可以是字符或字符串常量,也可以是字符类型的列;

SHOW VARIABLES LIKE ‘%char%’/显示客户端的字符集/

3、length(s)
语法:返回字符串s的长度;若s为null,则返回值为null

#1.length获取参数长度’字节个数’
SELECT LENGTH(‘john’);

3、concat(s1,s2)
将字符串s2连接到字符s1的后面;若s1为null,则返回s2;若s2为null,则返回s1;若s1和s2都为空,则返回null

SELECT CONCAT(last_name,’_’,first_name) AS 姓名 FROM employees;

4、upper、lower
upper(s) 返回字符串s的大写形式
lower(s) 返回字符串s的小写形式

SELECT UPPER(‘john’);#小转大
SELECT LOWER(‘JOHN’);#大转小

5、substr、substring截取字符串
substr(s,i[,j]) 从字符串s的第i个位置开始截取长度为j的子字符串;若省略j,则直接截取到尾部

‘方法的重载名字一样,参数列表不一样’
’MySQL中的索引都是从1开始的’

‘使用1个参数的,截取从指定索引处,后面的所有字符’
SELECT
SUBSTR(‘李莫愁爱上了陆展元’,7) 结果;

在这里插入图片描述
‘使用2个参数的,截取从指定索引处,指定长度的字符’
SELECT substr(‘李莫愁爱上了陆展元’,1,3) 结果;

在这里插入图片描述

6、instr:返回字符串中,子串的起始索引(第一次出现的地方),没有返回0
SELECT INSTR (‘杨不悔殷六侠爱上了殷六侠’,‘殷8侠’) AS out_put;
在这里插入图片描述
SELECT INSTR (‘杨不悔殷六侠爱上了殷六侠’,‘殷六侠’) AS out_put;
在这里插入图片描述

7、trim去除前后的空格

SELECT LENGTH( TRIM(’ 张翠山 ') )AS OUt_PUT;–一个汉字代表3个字符
在这里插入图片描述
‘去除前后的字符’
SELECT TRIM(‘a’ FROM ‘aaaaaa张aaaaaa翠山 aaaaaa’) AS OUt_PUT;
在这里插入图片描述
‘如果写的是两个字符,就会被系统认为是一个单位,然后系统去匹配相应的字符’
SELECT TRIM(‘aa’ FROM ‘aaaaaaa张aaaaaa翠山 aaaaaaa’) AS OUt_PUT;

‘以上中间的都被认为是有效的字符,不能用这个去除’
在这里插入图片描述

8.lpad (‘要左填充的字符串,指定长度,指定字符’)

SELECT LPAD (‘殷素素’,10,’*’) AS OUT_PUT
在这里插入图片描述
‘字符串最终的长度就是指定的长度,超过了就会截断。后面的都不会显示’
在这里插入图片描述

**9.rpad (‘要右填充的字符串,指定长度,指定字符’) **

SELECT RPAD (‘殷素素’,12,‘ab’) AS OUT_PUT
在这里插入图片描述
‘字符串最终的长度就是指定的长度,超过了就会截断。后面的都不会显示’
在这里插入图片描述
**10、replace(s1,s2[,s3]) **
使用s3字符串替换出现在s1字符串中的所有s2字符串,并返回替换后的新字符串;s3的默认值为空字符串
#9.replace ‘替换(全部替换)’‘字符串,要替换的内容,替换的内容’

SELECT REPLACE(‘张周芷若无周芷若忌周芷若爱上了周芷若’,‘周芷若’,‘赵敏’) as 结果;
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值