MySQL中的SUBSTR()函数用于从一个字符串中提取指定长度的子字符串。它有两种语法形式,分别适用于不同的场景。
SUBSTR(str, pos):从字符串str中的位置pos开始提取子字符串,直到字符串末尾。
示例:
SELECT SUBSTR('Hello, world!', 3); -- 返回 "llo, world!"
SUBSTR(str, pos, len):从字符串str中的位置pos开始提取长度为len的子字符串。
示例:
SELECT SUBSTR('Hello, world!', 3, 5); -- 返回 "llo, w"
注意:在这两种语法形式中,pos参数都是从1开始计数的,而不是从0开始。如果pos为负数,则从字符串末尾开始计算位置。例如,SUBSTR('Hello, world!', -6)将返回"world!"。
此外,还可以使用SUBSTRING()函数实现相同的功能,它与SUBSTR()函数的语法完全相同。例如:
SELECT SUBSTRING('Hello, world!', 3); -- 返回 "llo, world!"
SELECT SUBSTRING('Hello, world!', 3, 5); -- 返回 "llo, w"