字符串函数
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';