MySQL常见函数的讲解

函数:将某些功能封装到一起,对外提供到一个接口(函数名),通过函数调用的方式可以重复的执行函数里的功能,从而提高我们的代码的复用性。

MySql里自带了很多已经封装好了的函数,可以帮我们实现很多功能

MySql里调用函数和java一样用函数名(),完整的写法:

**select 函数名(实参)**from 表名

字符函数:

1、length(str):获取参数的字节数

select length('abcd'); // 返回值:4

select length('小白abc'); // 返回值:与字符编码类型有关

show variables like '%char%'; //查看数据可客服端字符集编码

GBK:一个汉字占两个字节;UTF-8:一个汉字是占三个字节.

2、concat(str1,str2,...):连接字符串

select concat(last_name,'--',first_name) as 姓名 from employees;

3、upper(str):小写字母变大写; lower(str):大写字母变小写;

select upper('zhonghao');

select lower('XIAOBEI');

案例:查询员工姓和名,把姓大写,名小写,并用&连接起来显示。

SELECT CONCAT(LOWER(first_name),"&",UPPER(last_name)) `name` FROM employees;

4、substr 和 substring

案例:截取字符串,从第4个字符(包含)开始到最后

select substr('目标字符串',4) as out_put; //注意:Mysql中索引值是从1开始的,和java不同,java索引是从0开始的.

案例:截取字符串,从第二个开始接到第三个

select substr('目标字符串',2,1) as out_put; //注意:第一个数字是开始截取的索引值,第二个数数截取的长度

5、instr('源字符串','子字符串'):作用返回子字符串子源字符串里的起始索引.

select instr('目标字符串','字符串'); //返回结果3, 如果找不到返回0

6、trim(' 有空格的字符串 '):作用是去掉字符串前后的空格,中间空格去不掉

select lenght(trim(' a s '));

扩展用法:去掉前后两端的其他字符:select trim('a' from 'aaaaa字符aaaaa去掉aaaaa');

7、lpad('目标字符串',10,'填充字符'); 将填充字符填充到目标字符的左边,补足10个

select lpad('哈哈哈',10,'*'); // 如果中间的数字比目标字符长度小,就只截取左边的数字长度字符串.

8、rpad:与lpad只是填充方向相反,其他一样;

9、replace('目标字符串','被替换子串','用于替换的新串')替换

select replace('目标字符串','字符','哈哈');

相关推荐
太理摆烂哥8 分钟前
MySQL数据库基础
数据库·mysql
wuhuhuan18 分钟前
JMeter 连接数据库并取值(JDBC 实战)
数据库·jmeter
小羊没烦恼!1 小时前
OS X 上使用.NET开发应用程序
开发语言·前端·数据库·人工智能·c#·策略模式
Rain的Java大神之路1 小时前
[特殊字符]8年Java老兵转型AI Agent:90%的人挂在同一个坑,根本不用学Python!(万字实战复盘,建议收藏)
java·数据库·人工智能·后端·python·spring·ai编程
高级程序源1 小时前
springboot本地生活服务平台33399-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·小程序·flask·课程设计
码途行者2 小时前
缓存一致性难题:Redis 和数据库如何做到数据一致?
数据库·redis
SelectDB2 小时前
Doris VARIANT 速查:类型映射、建表写法、索引配置与常见注意点
大数据·数据库·数据分析
l1t2 小时前
几种数据库软件count(distinct)和count()from group by子查询性能测试
开发语言·数据库
夜雪一千2 小时前
如何在MySQL中实现字段级加密
android·数据库·mysql
夜雪一千2 小时前
MySQL 如何存储经纬度坐标:选型、建表、空间查询实战
android·mysql·adb