SQL中的字符串截取函数

字符串截取函数,也是我们在数据开发分析的过程中比较常用的函数,比较常用的函数,有四个 left()、right()、substr()、substring_index() 函数。

一、left()函数

含义:返回从字符串左边开始指定个数的字符
语法格式:left(column,n)
释义:从字段column的字符串内容的左面开始截取,总共截取 n 的位置。
示例语句:SELECT office_name,LEFT(office_name,2) FROM database.table
结果展示:
SQL中的字符串截取函数_第1张图片

二、right()函数

含义:返回从字符串右边开始指定个数的字符
语法格式:right(column,n)
释义:从字段column的字符串内容的右面开始截取,总共截取 n 的位置
示例语句:SELECT office_name,right(office_name,1) FROM database.table
结果展示:
SQL中的字符串截取函数_第2张图片

三、substr()函数

substr()函数是我们在做字符串截取的时候,用的相对比较对的一个函数,因为它比较灵活,参数比较丰富,可以实现相对复杂一点的字符串截取需求。
格式:substr( expression , start , length )
释义:
(1)expression:需要被截取的字符串,可以是字符串、二进制字符串、text、image、列或包含列的表达式。
(2)start :开始截取的位置。
(3)length :需要截取的长度,(这个参数可以省略,如果没有指定截取长度,默认截取后面的所有字符)。

1,从指定位置开始截取到字符串结束

表达式:substr(column,2)
释义:从column的第二位开始截取,到字符串结束
示例语句:SELECT office_name,SUBSTR(office_name,2) FROM database.table ;
结果展示:
SQL中的字符串截取函数_第3张图片

2,从指定位置截取,并指定截取位数

表达式:substr(column,2,1)
释义:从column的第二位开始截取,截取一位
示例语句:SELECT office_name,SUBSTR(office_name,2,1) FROM database.table ;
结果展示:
SQL中的字符串截取函数_第4张图片

3,从字符串末尾第一位开始截取

表达式:substr(column,-1)
释义:从字符串末尾第一位开始截取,省略第三个函数,表示截取整个字符串
示例语句:SELECT office_name,SUBSTR(office_name,-1) FROM database.table
结果展示:
SQL中的字符串截取函数_第5张图片

4,从字符串倒数几位开始截取,指定个数的字符

表达式:substr(column,-2,1)
释义:从column倒数第二位开始截取,截取一位
示例语句:SELECT office_name,SUBSTR(office_name,-2,1) FROM database.table
结果展示:
SQL中的字符串截取函数_第6张图片

四、substring_index() 函数

1,指定字符在字符串中从前往后数出现次数位置,截取该位置之前的所有字符

表达式:substring_index(column,str,count)
释义:截取字符串column,str出现从前往后数第count次,之前的所有字符
示例语句:SELECT substring_index(‘www.baidu.com’,‘.’,2)
结果展示:
SQL中的字符串截取函数_第7张图片

2,指定字符在字符串中从后往前数出现次数位置,截取该位置之后的所有字符

表达式:substring_index(column,str,-count)
释义:截取字符串column,str出现从后往前数第count次,之后的所有字符
示例语句:SELECT substring_index(‘www.baidu.com’,‘.’,-2)
结果展示:
SQL中的字符串截取函数_第8张图片

3,指定字符在字符串不存在

表达式:substring_index(column,str,count)
示例语句:SELECT substring_index(‘www.baidu.com’,‘Goole’,2)
结果展示:
SQL中的字符串截取函数_第9张图片
以上就是我在工作中常用的,分享出来,希望可以和大家一起交流~~

你可能感兴趣的:(数据库,数据分析,MYSQL,数据库,sql,大数据)