A-A+
	MySql中substring字符串截取函数用法
在mysql中常用的字符串截取函数有substring,SUBSTRING_INDEX了,substring是pos开始长度为len的字符串了,这个与php字符串截取函数有点像,下面我们一起来看看.
用法:
- SUBSTRING(str,pos,len)
 - SUBSTRING(str FROM pos FOR len)
 - SUBSTRING(str,pos)
 - SUBSTRING(str FROM pos)
 
别名SUBSTR,截取字符串str从pos开始长度为len的字符串,如果不设置len参数默认获取pos以后的所有内容,注意字符串的索引是从1开始,如果pos为负数则从字符串的后面开始截取.
1.截取pos后所有的数据,代码如下:
- mysql> select substring('mysql database',2);
 - +——————————-+
 - | substring('mysql database',2) |
 - +——————————-+
 - | ysql database |
 - +——————————-+
 - 1 row in set
 
2.截取pos后3个字符数据,代码如下:
- mysql> select substring('mysql database',2,3);
 - +———————————+
 - | substring('mysql database',2,3) |
 - +———————————+
 - | ysq |
 - +———————————+
 - 1 row in set
 
3.看一些其它实例,代码如下:
- mysql> SELECT SUBSTRING(‘Quadratically’,5);
 - -> ‘ratically’
 - mysql> SELECT SUBSTRING(‘foobarbar’ FROM 4);
 - -> ‘barbar’
 - mysql> SELECT SUBSTRING(‘Quadratically’,5,6);
 - -> ‘ratica’
 - mysql> SELECT SUBSTRING(‘Sakila’, -3);
 - -> ‘ila’
 - mysql> SELECT SUBSTRING(‘Sakila’, -5, 3);
 - -> ‘aki’
 - mysql> SELECT SUBSTRING(‘Sakila’ FROM -4 FOR 2);
 - -> ‘ki’
 
既然讲到这里来了我再看看:substring_index,substring_index(str,delim,count),代码如下:
- mysql> SELECT SUBSTRING_INDEX(‘www.xiaohuboke.com’, ‘.’, 2);
 - -> ‘www.xiaohuboke.com’
 - mysql> SELECT SUBSTRING_INDEX(‘www.xiaohuboke.com’, ‘.’, -2);
 - -> ‘xiaohuboke.com’