MySQL中的文本处理函数整理,收藏速查

一文教会你 MySQL 很久之前整理的一些实战开发过程中常用的 SQL 语句,整理成表格与目录形式,可理解为实战速查手册,方便。,因为它能够精确存储浮点数,避免浮点数计算时的精度丢失问题。所有文章如若需要转载请说明出处,请尊重技术劳动成果!4字节,(-2147483648,2147483647)模糊查询(% 表示任意字符,_ 表示单个字符)。3字节,(-8388608,8388607)技术水平有限,如有错误,欢迎指正!2字节,(-32768,32767)8字节,(-2^63,2^63-1)精确小数,M为总位数,D为小数位数。 阅读详情

大家好,我是翔宇!

前言

​ 今天整理了一下MySQL中中的文本处理函数,当然如果翔宇整理漏掉了麻烦后台留言。不管是在哪一个编程语言,对文本的处理都是及其重要的,因为大家都是知道,日常遇到的数据中,文本都是会占很大一部门的,因此,大佬们就直接把常用到的处理操作进行封装,这样就不需要大家在进行文本处理时还要自己写函数,而且实际上这样还为很多刚入门的小伙伴给予了友好的感觉,比如很多数据分析师

学习SQL只是想要取一下数,压根就不算学习啥视图、存储过程、函数,所以这个时候,如果能够直接进行使用封装好的内置函数,那简直是小伙伴们的福音啊,说了这么多,就是想要说文本处理函数是很重要的,当然,翔宇这里已经整理了一下,你可以收藏一下,用到时候进行速查就行,不嫌麻烦你也可以像翔宇一样进行尝试整理一下。

1.思维导图

在这里插入图片描述

2.使用实例

下面的例子不具体查表,直接用select进行测试。

2.1 截取与拼接

left: 左截取,从前面(左边)向后对字符串截取一定长度的子串,语法:left(字符串,截取长度)

select left('滚滚长江东逝水',4);    -- 返回“滚滚长江”

right: 右边截取,从后面(右边)向前对字符串截取一定长度的子串,语法:right(字符串,截取长度)

select right('滚滚长江东逝水',4);    -- 返回“江东逝水”

substring : 对字符串进行制定位置和长度的截取子串,语法:substring(字符串,从第几个字符开始[,截取长度])

注意:语法中的[]表示此参数可缺省

此函数第三个参数可缺省(不填),缺省时表示截取到最后一个字符

select substring('滚滚长江董事会',3);   -- 返回“长江董事会”
select substring('滚滚长江都是水',3,2);  -- 返回“长江”

concat:字符串拼接,语法:concat(字符串1[,字符串2,字符串3,…])

此函数的参数可以给一个或者多个,当参数有null时,结果也返回null

select concat('滚滚')  -- 返回 “滚滚”
select concat('滚滚',null)  --返回 null
select concat('滚滚','长江','东逝','水')   -- 返回 “滚滚长江东逝水”
2.2转换

lower:转换为小写,语法:lower(待转换字符串)

select lower('HELLO,WORLD');  -- 返回 “hello,world”

upper :转换为大写,语法:upper(待转换字符串)

select upper('hello,world');   -- 返回 "HELLO,WORLD"
2.3长度

length :返回字符串的长度 ,语法:length(字符串)

select length('滚滚长江东逝水');   -- 返回21(一个汉字占三个英文字符的长度)
select length('hello');      -- 返回5
select length(null)          -- 返回null
2.4查找子串位置

locate:子串在原字符串中能找到时返回其在原字符串中的第一个位置 ,语法 Locate(子串,父串)

说明:子串不存在返回0,子串为null返回null

select locate('sql','翔宇在学习mysql还是哪种sql');   -- 返回8,第一个s是第八个字符
select locate('pgsql','翔宇在学习mysql还是哪种sql');   -- 返回0
select locate(null,'翔宇在学习mysql还是哪种sql');    -- 返回null

position :和locate功能一样,写法不同,语法position(substr in str)

select position('sql' in '翔宇在学习mysql还是哪种sql');   -- 返回8

instr:功能和前面两个一样,写法不同,语法:instr(str,substr)

select instr('翔宇在学习mysql还是哪种sql','sql');   -- 返回8
2.5去空格

ltrim:去掉字符串中的前导空格,就是开头有空格就去掉,语法:ltrim(字符串)

select ltrim('   现在是凌晨2点   ');     -- 返回“现在是凌晨2点   ”

rtrim:去掉字符串的尾部空格,语法:rtrim(字符串)

select rtrim('   现在是凌晨两点   ');    -- 返回“   现在是凌晨两点”

trim:去除字符串中前导和结尾空格,但并不能去除中间的空格 ,语法:trim(字符串)

select trim('   现在是   凌晨   两点   ');  -- 返回 “现在是   凌晨   两点”
2.6填充

lpad:对字符串进行固定长度返回,超过固定长度的截取,低于固定长度的用指定的字符左填充,语法:lpad(字符串,固定长度,需要填充的字符)

低于固定长度时

select lpad('一gao窝里gaogao',20,'*');     -- 返回 "********一gao窝里gaogao"

超过固定长度时

select lpad('法外狂徒张三',4,'^^');  -- 返回“法外狂徒”

rpad:对字符串进行固定长度返回,超过固定长度的截取,低于固定长度的用指定的字符右填充,语法:rpad(字符串,固定长度,需要填充的字符)

低于固定长度时

select rpad('一gao窝里gaogao',20,'*');     -- 返回 "一gao窝里gaogao********"

超过固定长度时

select rpad('法外狂徒张三',4,'^^');  -- 返回“法外狂徒”
2.7替换

replace:将字符串中的子串进行替换成新子串后进行返回,语法:replace(原字符串,待替换的子串,用于替换的子串)

select replace('滚滚长江东逝水','滚','不滚');   -- 返回“不滚不滚长江东逝水”

注意:进行替换时会全部替换,不可设定替换第几个满足条件的子串

2.8 返回发音

soundex:返回字符串的语音表示形式soundex,有助于比较拼写不同但英语发音相似的单词,语法:soundex(字符串)

例如:

如果库中存在一名名为Y.LEE的客户而搜索的时候的输入错误,下面的sql是不会有任何返回结果的。

SELECT CUSTOMER_NAME FROM CUSTOMER WHERE CUSTOMER_NAME = 'Y LEE'

而如果这样写:

SELECT CUSTOMER_NAME FROM CUSTOMER WHERE SOUNDEX(CUSTOMER_NAME) =SOUNDEX('Y LEE')

因为两者发音相似,所以他们的SOUNDEX值匹配,这样就会返回一条数据。

soundex参考于:https://www.cnblogs.com/shuoli/p/8099212.html

好了,sql的文本函数就总结到这里,欢迎大家关注加收藏,同时也欢迎大家光临翔宇的同名公众号,翔宇持续更新中!

从零到一:基于Docker与Gewechat协议,打造高可用微信AI助手 本文提供了一份从零开始的实战指南,详细讲解如何利用Docker容器化技术与Gewechat协议,构建一个高可用、低风险的微信AI助手。通过整合Dify AI平台,您可以为微信机器人注入大语言模型的智能,实现自动问答、知识库查询等高级功能,显著提升个人或团队在微信场景下的沟通与信息处理效率。 阅读详情

相关推荐

SpringCloud2025+SpringBoot3.5.0动态路由503问题排查与负载均衡依赖解析

本文详细排查了SpringCloud 2025与SpringBoot 3.5.0环境下,Spring Cloud Gateway动态路由返回503错误的根本原因。核心问题在于新版网关未默认集成负载均衡器,导致无法解析lb://服务名。通过对比静态路由与动态路由,定位到需显式引入spring-cloud-starter-loadbalancer依赖,并提供了完整的解决方案与最佳实践配置。

s3t4u的博客 500

MySQL常用文本处理函数归类

例:select substring(content,5) as abstract from my_content_t。例:select right(content,200) as abstract from my_content_t。说明:substring_index(被截取字段,关键字,关键字出现的次数)substring(被截取字段,从第几位开始截取,截取长度)说明:substring(被截取字段,从第几位开始截取)说明:right(被截取字段,截取长度)说明:left(被截取字段,截取长度)

强者征服今天,懦夫哀叹昨天,懒汉坐等明天。 586

Kettle Web版部署指南

看到以上的日志则表示启动成功。

2401_89221867的博客 1710

Mysql - 数据处理函数之文本处理函数

函数一般是在数据上执行的,格式化的返回数据处理结果。现在,来看一下SQL处理函数中的文本处理函数。下面介绍几种常用的文本处理函数。 1 - RTrim()函数。 作用:去掉串尾的空格来整理数据。例如上篇文章中使用Concat()函数返回的结果,对其数据使用RTrim()函数。示例如下: 使用Concat()函数的返回结果: 使用RTrim()函数的返回结果:

Northxw 2690

LTspice元器件库导入与路径管理:符号、模型、子电路全解析

在电子电路仿真中,元器件库通常由符号、模型和子电路三层构成:符号定义引脚外观,模型描述电气行为,子电路封装多端子网络。理解三者职责边界,是解决 LTspice 元器件库导入报错的关键。许多导入失败并非软件问题,而是文件类型错配、路径引用不清或引脚顺序不一致。掌握 `.include` 指令、用户库搜索路径和自制符号绑定模型,可以提升第三方模型复用效率,降低跨项目迁移成本。该思路适用于运放、MOS 管、二极管等器件建模,尤其在 UA741 等经典运放导入场景中,需要先核对 `.subckt` 引脚顺序,再选择

weixin_29182481的博客 164

深入解析高通8155平台音频数据流:从HAL到DSP的完整链路

本文深入解析了高通8155平台音频数据从安卓HAL层到DSP的完整传输链路。以播放场景为例,详细阐述了音频数据如何通过ASoC DPCM框架进行路由、打包,并经由APR协议与DSP交互,最终驱动硬件发声的核心流程,为车载音频系统开发与调试提供了清晰的框架。

rust6ferris的博客 1161

Mysql内置函数-文本处理函数

常用的mysql文本函数处理

weixin_43322583的博客 432

RDkit入门

今天开始写RDkit的入门教程,每天学习和写一小点,相信一句话“不积跬步无以至千里,不积小流无以成江海”,所以就慢慢来,一点一滴积累叭,从最简单的开始喽希望自己每天都能保持写博客的好习惯,把自己的代码笔记就极在这里,RDkit一块啃了很久的骨头,今天终于要下定决心,好好总结一波了,希望保持这个更新的频率,每天都能有所学。............

博客而已 6671

【MySQL基础-18】MySQL字符函数详解:高效处理文本数据的利器

MySQL的字符函数为数据处理提供了强大的工具集。掌握这些函数能够显著提高数据操作的效率和灵活性。在实际应用中,应根据具体需求选择合适的函数组合,并注意性能影响。希望本文能帮助您在数据库工作中更加得心应手地处理各种字符串操作需求。

weixin_39033358的博客 942

【实战圣经】YOLOv8-pose姿态估计模型从训练到RK3588部署:让边缘端骨骼识别速度突破60FPS

本教程从“模型训练-转换-边缘部署”全链路拆解了YOLOv8-pose姿态估计方案在RK3588上的落地过程,每一步都经过实战验证。无论是智能健身的动作实时纠正,还是工业设备的关键部件姿态检测,这套流程都能让你以最低成本实现高精度、高实时性的姿态估计应用。如果你在实践中遇到模型转换报错、部署性能不达标等问题,可聚焦某一环节深入优化——毕竟,让AI在边缘端“精准捕捉每一个关键点”,才是技术驱动场景创新的核心。

m0_71589036的博客 246

【Codecs系列】HEVC-SCC(一):核心技术介绍

DATE: 2020.6.4【Tags: HEVC SCC】 1、参考网址 2、SCC简介 3、HEVC-SCC核心技术

CSDN明星博主,认证博客专家,视频、Matlab领域优质创作者。 4792

mysql字符串处理函数大全

示例:SELECT MAKE_SET(1 | 4 | 8, 'Apple', 'Banana', 'Orange', 'Grape');示例:SELECT CONCAT_WS(', ', 'apple', 'banana', 'orange');示例:SELECT REPLACE('Hello World', 'World', 'Universe');示例:SELECT EXPORT_SET(5, 'apple', 'banana', 'orange');返回'apple,orange'。

jkzyx123的博客 4080

为什么devc++编译项目会失败?提示gcc无法正常启动...

根据你的描述,编译能正常进行时,只打开源文件并没有问题,问题主要出现在创建项目后编译失败,这通常与 Makefile 配置、环境变量、编译器路径设置等因素有关。你可以检查 Makefile 配置,验证 DevC++ 的编译器环境设置,或者尝试清理并重新配置项目。如果问题仍然存在,可以尝试重装 DevC++ 或重新配置工具链。希望如上措施及解决方案能够帮到有需要的你。

**My Coding Family** 1366

MySQL速查手册

MySQL速查手册 作者:ocean    撰写日期:2011-10-23 博客链接:http://oceanspace.tk         MySQL为何物相信不用我介绍了,既然你会看这篇文章,说明你已经知道了。那就介绍下这个速查手册的由来吧。     在学习MySQL时,我先从网上找了一些资料,然后又借了本书看,看的时候感觉记住了,可在后来的使用过程中,经常会遇到脑袋短路突然忘记

775

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

5分钟学会!MySQL常用函数速查表

【MySQL函数速查手册】本文整理了MySQL常用函数,涵盖字符串、数学、日期、聚合、条件、类型转换6大类。每个函数都配有语法说明和示例,并提供实战SQL案例,如格式化电话、计算折扣价等。适合开发者收藏作为日常查询参考,提升SQL编写效率。

「一个在数据库赛道上边学边分享的学妹」——聚焦国产数据库/信创方向、分享学习笔记、踩坑经验和行业观察。 636

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

MySQL 常用函数用法速查(含解释与示例)

MySql8.0数据库全部函数

phone15931168209的博客 1133

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

MySQL 常用命令速查表:日常开发、求职面试必备良方!

MySQL 常用命令速查表,包括 mysql 客户端连接服务器、用户和权限管理、管理数据库和数据表、各种查询语句、事务控制、DML 语句、视图、存储过程/函数、触发器以及备份与恢复等。

Tony.Dong的专栏 1万+

MySQL查看命令速查表

1、核心约束 / 关键字是避免误操作、保证数据安全的关键,必须重点掌握;2、数据修改类命令:UPDATE/DELETE 必须加WHERE条件,否则会修改 / 删除全表数据,操作前建议先用 SELECT 验证条件;3、查询优化:尽量避免用 SELECT *,只查询需要的字段;分页用LIMIT,排序用ORDER BY,能大幅提升查询效率。1、高频补充命令:索引操作(DROP INDEX)、事务控制(COMMITROLLBACK)、执行计划(EXPLAIN)是优化查询的核心,必须掌握;2、

艾莉丝努力练剑的博客,感谢大家一直以来的对艾莉丝的支持和鼓励,uu们如果对C/C++方向感兴趣的话,可以通过艾莉丝主页的微信名片加艾莉丝的好友,和努力练剑的艾莉丝一起加油! 1174

MySQL - 常用命令速查:新手必备的 20 个高频操作

MySQL 常用命令速查指南 摘要 本文介绍了 MySQL 数据库的 20 个高频操作命令,涵盖从基础连接到数据表操作的完整流程。主要内容包括: 连接与环境设置:登录服务器命令 mysql -u root -p 和退出命令 exit/quit 数据库操作:查看数据库 SHOW DATABASES、创建 CREATE DATABASE、选择 USE 和删除 DROP DATABASE 等基础命令 数据表操作:查看表 SHOW TABLES 等表结构管理命令 文章采用简洁明了的命令格式展示,配合 Java JD

千淘万漉虽辛苦,吹尽狂沙始到金 2万+

推荐:一网打尽MySQL精髓 -《MySQL常用命令速查表》

推荐:一网打尽MySQL精髓 -《MySQL常用命令速查表》 去发现同类优质开源项目:https://gitcode.com/ 数据库是现代软件应用的心脏,而MySQL作为最受欢迎的关系型数据库之一,其重要性不言而喻。对于每一位数据库管理者、开发人员乃至偶尔接触数据库的工程师而言,快速、准确地执行SQL命令至关重要。因此,我们诚挚地向您推荐一个极其实用的开源宝藏——《MySQL常用命令速查表》。 ...

gitblog_06682的博客 504

如何检查MySQL手册_MySQL速查手册

MySQL速查手册作者:ocean 撰写日期:2011-10-23MySQL为何物相信不用我介绍了,既然你会看这篇文章,说明你已经知道了。那就介绍下这个速查手册的由来吧。在学习MySQL时,我先从网上找了一些资料,然后又借了本书看,看的时候感觉记住了,可在后来的使用过程中,经常会遇到脑袋短路突然忘记用法的情况,这时候翻书或者谷歌都不太方便,要是能有个表格之类的一目了然的东西一查就是,那多方便...

weixin_39991148的博客 258

[MYSQL] 函数

字符串函数数值函数日期函数流程函数以上就是 MySQL 开发中使用频率最高的四类内置函数,覆盖字符串处理、数值运算、日期统计、条件分支全部常见场景。

2502_93796332的博客 207

MySQL 速查手册(基础)

前言: 学习MYSQL后有一段时间没使用了,又把以前的笔记翻出来整理一遍,方便自己以后遇到不会的来查一下 一、基础语法 1、DDL 数据库的的增删改查 # 创建 CREATE DATABASE 数据库名 [CHARACTER SET 字符集]; # 删除 DROP DATABASE 数据库名; # 修改 ALTER DATABASE 数据库名 CHARACTER SET 字符集; # 查看 SHOW DATABASES; # 查看有哪些数据库 USE 数据库名; # 使用数据库 SHOW CREA

piyuanyuan的博客 1440

mysql配置整理(速查手册)

基础: basedir =  使用给定目录作为根目录(安装目录)。 character-sets-dir =  给出存放着字符集的目录。 datadir =  从给定目录读取数据库文件。 pid-file = filename 为mysqld程序指定一个存放进程ID的文件(仅适用于UNIX/Linux系统); Init-V脚本需要使用这个文件里的进程ID结束mysqld进程。 socke

云端 591

程序员速查手册:自学网站整理大全(Java 免费 + 超详细),零基础到精通,收藏随用

学习编程,有些书是必须要看的,某宝、某东等等电商平台都能买到。(有条件请支持实体书)简 介:可以看做GitHub的国内版,GitHub虽好,但GitHub服务器在美国,网络方面main一直是个问题,这种情况下,码云是个不错的替代者。简 介:优秀的技术博主实在太多了,列不完,也看不完,这里有一个导航页,有上百个优秀博主的博客链接,感兴趣的按需去找吧。

2301_79455190的博客 1414
上一篇: 卧槽,一行代码就可将网页直接转pdf保存下来(pdfkit)
下一篇: 花2w培训数据分析真的值得吗?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python和数据分析

钟意作者

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值