Mysql中字符串截取SUBSTRING_INDEX

当我们想要对数据库中的某个数据的字段进行截取或者分隔的时候,可以使用'substring_index'函数,它会返回一个字符串,该字符串源自原本字符串中使用特定分隔符,分隔出来的指定的字符串。

函数的语法是:

//str是源字符串,delim是分隔符,count是指定需要分隔到什么位置。
SUBSTRING_INDEX(str,delim,count)

'str'就是我们想要进行分隔的源字符串。

'delim'里面写入这个字符串的分隔符。

'count'的值分为正数和负数,如果'count'是正数,那么’substring_index‘函数会从字符串左边向右边进行分隔,分隔的到第'count'个分隔符的字符串结束。如果'count'为负数,那么'substring_index'就会字符串右边向左边进行分隔,分隔的到第'count'个分隔符的字符串结束。

可能这样说的不是很能理解,可以通过下面的例子来配合理解

SELECT SUBSTRING_INDEX('haha.dashuaige.me', '.', 1);
//以.为分隔符,到第一个.结束,输出结果就是haha

如果我们想要拿到最后的com,就可以这么写

SELECT SUBSTRING_INDEX('haha.dashuaige.me', '.', -1);
//以.为分隔符,从最后一位开始到遇到的第一个.结束,输出结果就是me

如果我们只想拿到中间'dashuaige'这个值怎么办呢,可以这么写

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('haha.dashuaige.me','.', -2),'.','1');
//这段代码的意思就是,先截取原字段后面两段,然后再取出左边第一个字段。
就可以将'dashuaige'单独取出

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值