SQL常用函数系列——8个常用的字符函数

nettips
发布于 2022-5-13 17:11
浏览
0收藏

 

数据库函数是一种具有某种功能的模块,可以接收零个或多个输入值,并且返回一个输出值。MySQL 为我们提供了许多用于处理和分析数据的系统函数,今天小小继续给大家连载MySQL常用函数——字符函数。

SQL常用函数系列——8个常用的字符函数-鸿蒙开发者社区

1 CONCAT

 

CONCAT(str1,str2,…)函数用于返回多个字符串连接之后的字符串,例如:

SELECT CONCAT( 'MySQL', '字符串', '函数');
输出:MySQL字符串函数

 

2 LOWER

 

LOWER(str)和LCASE(str)函数用于将字符串转换为小写形式,例如:

SELECT LOWER( 'MySQL字符串函数') 
     , LCASE( 'MySQL字符串函数') ; 
输出:mysql字符串函数|mysql字符串函数|

 

3 UPPER

 

UPPER(str)和UCASE(str)函数用于将字符串转换为大写形式,例如:

SELECT UPPER( 'MySQL字符串函数') 
     , UCASE( 'MySQL字符串函数') ; 
输出:MYSQL字符串函数|MYSQL字符串函数|

 

4 LENGTH

 

LENGTH(str)和OCTET_LENGTH(str)函数用于返回字符串的字节长度,例如:

SELECT LENGTH( 'MySQL字符串函数') 
     , OCTET_LENGTH( 'MySQL字符串函数') ; 
输出:20| 20|

 

在 utf8mb4 编码中,一个汉字字符占用 3 个字节。另外,CHAR_LENGTH(str)和CHARACTER_LENGTH(str)函数用于返回字符串的字符长度,也就是字符个数。

 

5 SUBSTRING

 

SUBSTRING(str,pos)、SUBSTRING(str FROM pos)、SUBSTRING(str,pos,len)以及SUBSTRING(str FROM pos FOR len)函数都可以用于返回从指定位置 pos 开始的子串,len 表示返回子串的长度;pos 为 0 表示返回空字符串。例如:

SELECT SUBSTRING( 'MySQL字符串函数', 6) , 
       SUBSTRING( 'MySQL字符串函数'FROM 6) , 
       SUBSTRING( 'MySQL字符串函数', 6, 3), 
       SUBSTRING( 'MySQL字符串函数'FROM 6 FOR 3), 
       SUBSTRING( 'MySQL字符串函数', 0) ; 
输出:字符串函数|字符串函数|字符串 |字符串 | |

 

另外,SUBSTR和MID函数都是 SUBSTRING 函数的同义词,也支持以上 4 种形式。

 

6 TRIM

 

TRIM([remstr FROM] str)函数用于返回删除字符串 str 两侧所有 remstr 字符串之后的子串,remstr 默认为空格。例如:

SELECT TRIM( ' MySQL字符串函数 ') , 
       TRIM( '-'FROM'--MySQL字符串函数--') ; 
输出:MySQL字符串函数|MySQL字符串函数|

 

7 LPAD/RPAD

 

LPAD(str,len,padstr)函数表示字符串 str 的左侧使用 padstr 进行填充,直到长度为 len;RPAD(str,len,padstr)函数表示在字符串 str 的右侧使用 padstr 进行填充,直到长度为 len。例如:

SELECT LPAD( 123, 6, '0') , 
       LPAD( 123, 2, '0') , 
       RPAD( 123, 6, '0') , 
       RPAD( 123, 2, '0') ; 
输出:000123|12 |123000|12 |

 

当字符串 str 的长度大于 len 时,相当于从右侧截断字符串。

另外,REPEAT(str,count)函数用于将字符串 str 复制 count 次并返回结果。例如:

SELECT REPEAT( '🔥', 5) ; 
输出:🔥🔥🔥🔥🔥|

 

8 INSTR

 

INSTR(str,substr)函数用于返回子串 substr 在字符串 str 中第一次出现的索引位置,没有找到子串时返回 0。例如:

select INSTR( 'MySQL字符串函数', '字符串') , 
       INSTR( 'MySQL字符串函数', '日期') , 
       INSTR( 'MySQL字符串函数', '') , 
       INSTR( 'MySQL字符串函数', null) ; 
输出:6| 0| 1| |

 

另外,LOCATE(substr,str)函数也可以用于返回子串 substr 在字符串 str 中第一次出现的索引位置,和 INSTR(str,substr) 函数唯一的不同就是参数的顺序相反。

 

来  源:小小的SQL学习笔记/作  者:小小

 

文章转自公众号:openGauss

分类
标签
已于2022-5-13 17:11:35修改
收藏
回复
举报
回复