标签:开始 1.5 主键 相关 停止 ext 现在 font 各级
mysql根据字符截取字符串(总结)
1.1 前言
为结合自己平常查资料的习惯,我会先给出例子,然后再对相关知识进行详解。该案例使用到的函数为:SUBSTRING_INDEX
1.2 需要实现的实际需求
1.3 截取一级目录主键
步骤一:
先根据字符‘.‘从左边开始第二个‘.‘开始截取左边的字符串:SUBSTRING_INDEX(dir_seq,‘.‘,2)
截取结果: .341
步骤二:
在步骤一的截取结果再根据字符‘.‘从右边开始第一个‘.‘开始截取右边的字符串:SUBSTRING_INDEX( SUBSTRING_INDEX(dir_seq,‘.‘,2) ,‘.‘,-1)
截取结果: 341
1.3 截取二级目录主键
步骤一:
先根据字符‘.‘从左边开始第三个‘.‘开始截取左边的字符串:SUBSTRING_INDEX(dir_seq,‘.‘,3)
截取结果: .341.346
步骤二:
在步骤一的截取结果再根据字符‘.‘从右边开始第一个‘.‘开始截取右边的字符串:SUBSTRING_INDEX( SUBSTRING_INDEX(dir_seq,‘.‘,3) ,‘.‘,-1)
截取结果: 346
1.4 截取三级目录主键,其实从上面两个例子已经看出规律,先从左截取三级目录id所在的位置,再从右截取第一个‘.‘的位置。。。
1.5 mysql相关字符串截取的函数详解:
根据匹配的字符以及出现的位置开始截取字符串
subStr: 需要截取的字段
matchStr: 匹配的字符
index: 从第几个匹配的字符,为正数时从左边开始查找并向左截取,为负数时从右边开始查找并向右截取
从左边开始向右截取,截至第index位(index从1开始)
subStr: 需要截取的字段
index: 停止截取的位置(包括该位置的字符)
RIGHT(subStr,index)
从右边开始向左截取,截至从右边开始数第index位(index从1开始)
subStr: 需要截取的字段
index: 停止截取的位置(包括该位置的字符)
当index为负数时,从右边开始向左截取,截至从右边开始数第index位
当index为正数时,从左边开始向右截取,截至从左边开始数第index位
subStr: 需要截取的字段
index: 停止截取的位置(包括该位置的字符)
标签:开始 1.5 主键 相关 停止 ext 现在 font 各级
原文地址:https://www.cnblogs.com/tanshaoxiaoji/p/mysql_substring.html