MySQL 分隔符分隔字符串操作汇总
MySQL 分隔符分隔字符串操作汇总。
参考文档:https://dev.mysql.com/doc/refman/8.0/en/string-functions.html
SUBSTRING
对于所有形式的 SUBSTRING (),要从中提取子字符串的字符串中第一个字符的位置被认为是 1。
可以对函数使用负值 。在这种情况下,子字符串的开头是字符串末尾的字符,而不是开头。
指定位置截取
SUBSTRING (str,pos) 或者 SUBSTRING (str FROM pos)
示例:
mysql> SELECT SUBSTRING('Quadratically',5);
-> 'ratically'
mysql> SELECT SUBSTRING('foobarbar' FROM 4);
-> 'barbar'
mysql> SELECT SUBSTRING('Sakila', -3);
-> 'ila'
指定长度截取
SUBSTRING (str,pos,len) 或者 SUBSTRING (str FROM pos FOR len)
示例:
mysql> SELECT SUBSTRING('Quadratically',5,6);
-> 'ratica'
mysql> SELECT SUBSTRING('Sakila', -5, 3);
-> 'aki'
mysql> SELECT SUBSTRING('Sakila' FROM -4 FOR 2);
-> 'ki'
SUBSTRING_INDEX
从指定出现次数的分隔符之前的字符串中返回子字符串。
SUBSTRING_INDEX 函数的格式如下:
SUBSTRING_INDEX(str,delim,count)
从出现分隔符 str
之前的字符串返回子字符串 。
- 如果是正数,则返回最终分隔符左侧(从左侧算起)的所有内容。
- 如果为负数,则返回最终分隔符右侧(从右侧开始计数)的所有内容。
搜索时执行区分大小写的匹配 。
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
-> 'www.mysql'
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
-> 'mysql.com'
SUBSTRING_INDEX () 任何参数是 NULL, 则返回 NULL。
LEFT
LEFT 函数的格式如下:
LEFT(str,len)
返回字符串中最左边 *len
的字符str
*,或者 NULL
如果任何参数是 NULL
。
mysql> SELECT LEFT('foobarbar', 5);
-> 'fooba'
RIGHT
RIGHT 函数的格式如下:
RIGHT(str,len)
返回字符串中最右边 *len
* 的字符 *str
*,或者 NULL
如果任何参数是 NULL
。
mysql> SELECT RIGHT('foobarbar', 4);
-> 'rbar'
相关文章