SUBSTRING_INDEX(str,delim,count) ----------------------------------------------- SQL> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2); +---------------------------------------------------------+ | SUBSTRING_INDEX('www.mysql.com', '.', 2) | +---------------------------------------------------------+ | www.mysql | +---------------------------------------------------------+ 1 row in set (0.00 sec) ============================================== 1、substring_index(str,delim,count) str:要处理的字符串 delim:分隔符 count:计数 例子:str=www.google.com substring_index(str,'.',1) 结果是:www substring_index(str,'.',2) 结果是:www.google 也就是说,如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容 相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容,如: substring_index(str,'.',-2) 结果为:google.com 有人会为,如果我呀中间的的google怎么办? 很简单的,两个方向: 1、从右数第二个分隔符的右边全部,再从左数的第一个分隔符的左边: substring_index(substring_index(str,'.',-2),‘.’,1);
|