SQL函数之截取字符串函数「建议收藏」

SQL函数之截取字符串函数「建议收藏」SQL截取字符串截取字符串在各个数据库的函数名称不一样mysql:substr(),substring()oracle:substr()sqlserver:substring()此处以mysql为例:1、left(name,4)截取左边的4个字符SELECTLEFT(201809,4)年结果:20182、right(name,2)截取右边的2个...

SQL截取字符串

截取字符串在各个数据库的函数名称不一样

  • mysql:substr() , substring()
  • oracle : substr()
  • sql server : substring()

此处以mysql为例:

1、left(name,4)截取左边的4个字符

SELECT LEFT(201809,4) 年
只听到从架构师办公室传来架构君的声音:
色夺歌人脸,香乱舞衣风。有谁来对上联或下联?

结果:2018

2、right(name,2)截取右边的2个字符

此代码由Java架构师必看网-架构君整理
SELECT RIGHT(201809,2) 月份

结果:09

3、SUBSTRING(name,5,3) 截取name这个字段 从第五个字符开始 只截取之后的3个字符

SELECT SUBSTRING('字符串截取示例',5,3)

结果:取示例

4、SUBSTRING(name,3) 截取name这个字段 从第三个字符开始,之后的所有个字符

此代码由Java架构师必看网-架构君整理
SELECT SUBSTRING('字符串截取示例',3)

结果:串截取示例

5、SUBSTRING(name, -4) 截取name这个字段的第 4 个字符位置(倒数)开始取,直到结束

SELECT SUBSTRING('字符串截取示例',-4)

结果:截取示例

6、SUBSTRING(name, -4,2) 截取name这个字段的第 4 个字符位置(倒数)开始取,只截取之后的2个字符

SELECT SUBSTRING('字符串截取示例',-4,2)

结果:截取

注意:我们注意到在函数 substring(str,开始位置, 截取长度)中, ‘开始位置’ 可以是负值,但 ‘截取长度 ’不能取负值。

7、substring_index(‘www.baidu.com’, ‘.’, 2) 截取第二个 ‘.’ 之前的所有字符

SELECT substring_index('www.baidu.com', '.', 2)

结果:www.baidu

8、substring_index(‘www.baidu.com’, ‘.’, -2) 截取第二个 ‘.’ (倒数)之后的所有字符

SELECT substring_index('www.baidu.com', '.', -2)

结果:baidu.com

9、SUBSTR(name, 1, CHAR_LENGTH(name)-3) 截取name字段,取除name字段后三位的所有字符

SELECT SUBSTR('字符串截取示例', 1, CHAR_LENGTH('字符串截取示例')-3)

结果:字符串截

架构君码字不易,如需转载,请注明出处:https://javajgs.com/archives/165728
0
 

发表评论