Skip to content

字符串函数

MySQL 提供了丰富的字符串函数,用于对字符串进行各种操作,如合并、计算长度、填充、替换等。下面是一些常用的字符串函数:

函数功能
CONCAT(S1,S2,...Sn)字符串拼接,将 S1,S2,... Sn 拼接成一个字符串
LOWER(str)将字符串 str 全部转为小写
UPPER(str)将字符串 str 全部转为大写
LPAD(str,n,pad)左填充,用字符串 pad 对 str 的左边进行填充,达到 n 个字符串长度
RPAD(str,n,pad)右填充,用字符串 pad 对 str 的右边进行填充,达到 n 个字符串长度
TRIM(str)去掉字符串头部和尾部的空格
SUBSTRING(str,start,len)返回从字符串 str 从 start 位置起的 len 个长度的字符串

演示如下

concat:字符串拼接

bash

SELECT concat('hello','Mysql');

lower:转小写

bash

SELECT lower('HELLO');

upper:转大写

bash

SELECT upper('hello');

lpad:左填充

  • 第一个参数 数据

  • 第二个参数 数据最后长度

  • 第三个参数 填充内容

bash

SELECT lpad('01',5,'-');

rpad:右填充

  • 第一个参数 数据

  • 第二个参数 数据最后长度

  • 第三个参数 填充内容

bash

SELECT rpad('01',5,'-');

trim : 去除空格

bash

SELECT trim('  hello  ');

substring:截取子串

bash

SELECT substring('hello',1,3);

案例

由于需求变更,企业员工的工号 统一为 5 位,目前不足 5 位数全部在前面补 0.比如 1 号员工的工号为 00001

bash

UPDATE emp set workID = LPAD(workID,5,'0');
  • 查找史密斯 不知道大写还是小写,这样写就是转变为小写
bash

SELECT * FROM emp WHERE lower(ename) = 'smith';