用法:
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.111cn.net’, ‘.’, 2); -> ‘www.111cn’ mysql> SELECT SUBSTRING_INDEX(‘www.111cn.net’, ‘.’, -2); -> ‘111cn.net’ |
时间: 2024-09-20 13:54:13