在MySQL中,SUBSTR()
函数用于获取字符串的子串。其语法如下:
SUBSTR(str, pos, len)
str
是要从中提取子串的字符串表达式。pos
是子串的起始位置(如果为正数,则从字符串的开始计算;如果为负数,则从字符串的末尾计算)。len
是要提取的字符数量。
如果 pos
是正数,则 SUBSTR()
函数从字符串的开始位置提取子串。如果 pos
是负数,则 SUBSTR()
函数从字符串的末尾开始计算位置。
如果 len
未指定或者为 NULL,则 SUBSTR()
函数返回从 pos
开始到字符串末尾的子串。
以下是一些使用 SUBSTR()
函数的示例:
- 获取字符串的前5个字符:
SELECT SUBSTR('Hello World', 1, 5) AS ExtractString;
结果:Hello
- 获取字符串的第2个字符开始的3个字符:
SELECT SUBSTR('Hello World', 2, 3) AS ExtractString;
结果:ell
- 从字符串末尾开始获取3个字符:
SELECT SUBSTR('Hello World', -3, 3) AS ExtractString;
结果:rld
- 获取字符串中第一个单词:
SELECT SUBSTR('Hello World', 1, POSITION(' ' IN 'Hello World')-1) AS ExtractWord;
结果:Hello
- 获取字符串中最后一个单词:
SELECT SUBSTR('Hello World', POSITION(' ' IN 'Hello World')+1) AS ExtractWord;
结果:World
请注意,POSITION()
函数用于查找子串在字符串中的位置,如果子串不存在,则 POSITION()
返回0。