丰富的函数往往能使我们的工作事半功倍,函数可以帮我们处理很多事情,诸如字符串的处理、数值的运算、日期的运算...,在MySQL数据库中,函数可以用在select语句及其子句(如where、order by、having)中,也可以用在update、delete语句及其自居中。

本节将配合一些实例对MySQL常用的函数进行详细的介绍。

字符串函数

字符串函数是最常用的一种函数。回顾以往我们使用过的函数,发现字符串处理的相关函数占已使用过的函数很大一部分。在MySQL中,字符串函数同样是最丰富的一类函数。如下表所示。

函数 功能
CONCAT(S1,S2,...,Sn) lianjie S1,S2,...,Sn为一个字符串
INSERT(str,x,y,instr) 将字符串str从第x个位置开始,y个字符长的自传替换为字符串instr
LOWER(str) 将字符串str中所有字符变为小写
UPPER(str) 将字符串str中所有字符变为大写
LEFT(str,x) 返回字符串str最左边的x个字符
RIGHT(STR,x) 返回用字符串pad对字符串str最左边进行填充,直到长度为n个字符的长度
LPAD(str,n,pad) 用字符串pad对字符串str最左边进行填充,直到长度为n个字符的长度
RPAD(str,n,pad) 用字符串pad对字符串str最右边进行填充,直到长度为n个字符的长度
LIRIM(str) 去掉字符串str左侧的空格
RTRIM(str) 去掉字符串str右侧的空格
REPEAT(str, x) 返回字符串str重复x次的结果
REPLACE(str,a,b) 用字符串b替换字符串str中所有出现的字符串a
STRCMP(s1,s2) 比较字符串s1和s2
TRIM(str) 去掉字符串行尾和行头的空格
SUBSTRING(str,x,y) 返回从字符串str x位置起y个字符长度的字符串

下面通过具体的实例来逐个地研究每个函数的用法。


测试用例

CONCAT(S1,S2,...Sn)函数:将传入的参数连成一个字符串。

  • SELECT CONCAT( 'aaa', 'bbb', 'ccc' ), CONCAT( 'aaa', NULL );
  • 这里concat函数将aaa,bbb,ccc拼接成一个字符串,但是与null拼接时,将输出null值

INSERT(str, x, y, instr)函数:将字符串str从第x个位置开始,y个字符长的自传替换为字符串instr。

  • SELECT INSERT('helloworld2019',11,4,'2020');
  • 将字符串helloworld2019中,从第11个字符开始,替换以后的四个字符为“2020”.

LOWER(str)和UPPER(str):分别将字符串str转成小写,大写。

  • SELECT LOWER('HELLOWORLD2019'),UPPER('helloworld2020');
  • 分别将字符串'HELLOWORLD2019', 'helloworld2020'转成小写,大写。

 LEFT(str,x)和RIGHT(STR,x):返回字符串str最左边的x个字符。返回用字符串pad对字符串str最左边进行填充,直到长度为n个字符的长度。如果第二个字符串是NULL,那么将不返回任何字符串。

  • SELECT LEFT('helloworld2020', 10), LEFT('helloworld2020', null), RIGHT('helloworld2020', 4);
  • 看下返回结果:

LPAD(str,n,pad)和RPAD(str,n,pad):用字符串pad对字符串str最左/右边进行填充,直到长度为n个字符的长度。

  • SELECT LPAD('helloworld',14, '2020'),RPAD('helloworld',14, '2020');
  • 看下填充后的结果:

LIRIM(str)和RTRIM(str):去掉字符串str左侧/右侧的空格。

  • SELECT LTRIM('   #helloworld2020'), RTRIM('helloworld2020#    ');

REPEAT(str, x):返回字符串str重复x次的结果。

  • SELECT REPEAT('helloworld--', 4);

REPLACE(str,a,b):用字符串b替换字符串str中所有出现的字符串a

  • SELECT REPLACE('helloworld====',  '====',  '2020');

STRCMP(s1,s2):比较字符串s1和s2

  • 如果s1 > s2,则返回 -1;
  • 如果s1 = s2,则返回 0;
  • 如果s1 < s2,则返回 1;
  • SELECT STRCMP('a', 'b'), STRCMP('b','b'), STRCMP('c','b');

TRIM(str):去掉字符串行尾和行头的空格。

  • SELECT TRIM('   -helloworld-  ');

SUBSTRING(str,x,y):返回从字符串str x位置起y个字符长度的字符串。

  • SELECT SUBSTRING('helloworld2020', 1, 10);
  • 此函数常用来对给定字符串进行字符串的提取。


愿你就像早晨八九点钟的太阳,活力十足,永远年轻。

MySQL(16)-----字符串函数相关推荐

  1. MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr)

    转: MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr) LPAD(str,len,padstr) 用字符串 padstr对 str进行左边填 ...

  2. php mysql字符串截取比较读取_MySQL_Mysql字符串截取函数SUBSTRING的用法说明,感觉上MySQL的字符串函数截取 - phpStudy...

    Mysql字符串截取函数SUBSTRING的用法说明 感觉上MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用. 函数: 1.从左开始截取 ...

  3. mysql的字符串函数大全_MySQL的字符串函数大全

    ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NULL. mysql> select ASCII('2'); -& ...

  4. mysql的字符串函数

    对于针对字符串位置的操作,第一个位置被标记为1. 1.ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NULL. mysq ...

  5. MySQL中字符串函数详细介绍

    MySQL字符串函数对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str)返回字符串str的 最左面字符的ASCII代码值.如果str是空字符串, 返回0.如果str是NULL,返回N ...

  6. php mysql 随机字符串函数是,mysql生成随机字符串函数分享

    这篇文章主要介绍了mysql生成随机字符串函数分享,本文直接给出实现代码,需要的朋友可以参考下 set global log_bin_trust_function_creators = 1; DROP ...

  7. mysql 子字符串函数_MySQL 内置字符串函数

    MySQL内置函数concat() 用于连接字段 LTRIM(),RTRIM(),TRIM() 分别用于去除左边空格,右边空格,以及左右空格都去除NOW() 放回当前的日期和时间UPPER() 和LO ...

  8. c连接mysql数据库字符串函数_在mysql数据库—— 字符串函数的运用

    在mysql数据库中函数的使用 字符函数: 函数名称 描述 concat 字符连接 Concat_ws 使用指定的分隔符进行字符连接 format 数字格式化(千分化) Lower 转换成小写字母 u ...

  9. MySQL 截取字符串函数

    MySQL 截取字符串的几种常用函数 测试数据及语句如下(FN:function name,方法名称) 1.从字符串左边截取 FN:left(str,length) ; 2.从字符串右边截取 FN:r ...

  10. Mysql学习总结(27)——Mysql数据库字符串函数

    注:sql的移植性比较强,函数的移植性不强,一般为数据库软件特有,例如mysql有mysql的函数,oracle有oracle的函数. 1.concat连接字符串:

最新文章

  1. 国内最牛的Java面试八股,真offer收割机!
  2. 《Redis设计与实现》之第七章:压缩列表
  3. 《编程匠艺》读书笔记之十四
  4. 22/11/2010
  5. php网站开发期末大作业,大学生期末网页大作业
  6. Android保存图片到本地相册
  7. 卡内基梅隆大学和斯坦福计算机,卡内基梅隆大学并列全美榜首的专业--计算机专业...
  8. 第十一章 Helm-kubernetes的包管理器(上)
  9. Android 应用开发---App 移动应用中九种导航设计总结及其优缺点分
  10. 基于JAVA+SpringMVC+MYSQL的考研帮社区管理系统
  11. Outlook 邮箱备份操作手册
  12. 独立站电商广告和营销洞察
  13. JPEG 图片存储格式与元数据解析
  14. Audio Hijack Pro 3.7.4 录制应用程序内播放的声音
  15. Apache+PHP+VC14环境搭建及测试
  16. cpu要和gpu搭配吗_谈谈CPU和显卡如何搭配
  17. 腾讯发布智能硬件全民WiFi 可提高游戏速度
  18. 机械臂规划----三次样条曲线
  19. 英文名字大全解释 (详)
  20. 把Fusioncharts封装成Ext组件的思路 及实现

热门文章

  1. Spring搭建本地源码调试环境
  2. 快速排序(C#)实现
  3. LinkedHashMap如何保证有序
  4. Python的三种基本数据类型
  5. 盘点2017年热度很高的编程语言
  6. python-递归函数
  7. 打造极致Material Design动画风格Button
  8. ArcGIS图层和要素的过滤显示
  9. oracle developer连接access
  10. 一段javscript 省市连动代码