Mysql截取和拆分字符串函数用法
Mysql截取和拆分字符串函数用法
截取字符串函数:
SUBSTRING(commentid,9)
意思是:从第9个字符开始截取到最后。SUBSTRING的参数有三个,最后一个是截取的长度,默认是到结尾,负数是倒数第几位。
拆分字符串函数:
SUBSTRING_INDEX(commentid, '-', 1)
意思是:以 - 进行拆分字符串,从第一个关键词开始取前面所有的字符串。如果上面的第三个参数修改为 -1,那么就是取倒数第一个。如果我们想从字符串 c-11065-50 中,取出50或者11065如何写呢?
取得50的写法:
SUBSTRING_INDEX(checkid,'-',-1)
取得11065的写法:
SUBSTRING_INDEX(SUBSTRING_INDEX(checkid,'-',-2),'-',1)
或者:
SUBSTRING_INDEX(SUBSTRING_INDEX(checkid,'-',2),'-',-1)
组合用法:
例如截取:content_13-11220-1中的13
SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING(commentid,9), '-', 1), '-',-1)
发现这里需要调用三次函数,有没有可以调用两次的呢。可以这样写:
SUBSTRING_INDEX(SUBSTRING_INDEX(commentid, '-', 1), '_',-1)