SUBSTRING
是 MySQL 中的一个字符串函数,用于从一个字符串中提取子字符串。它可以根据指定的起始位置和长度来截取字符串的一部分。
SUBSTRING(str, pos, len)
str
:要截取的原始字符串。pos
:起始位置(从1开始计数)。len
:截取的长度(可选,默认为从起始位置到字符串末尾)。SUBSTRING
在 MySQL 中经过优化,执行效率高。SUBSTRING
函数主要有两种类型:
SUBSTRING
函数返回的结果不正确?原因:
解决方法:
TRIM
函数去除字符串两端的空格。REPLACE
函数处理特殊字符。SELECT SUBSTRING(TRIM(' example '), 2, 5); -- 返回 'xample'
SELECT SUBSTRING(REPLACE('example!', '!', ''), 1, 5); -- 返回 'exampl'
解决方法:
LENGTH
函数获取字符串长度,然后计算起始位置。RIGHT
函数直接截取最后一个字符。SELECT SUBSTRING('example', LENGTH('example'), 1); -- 返回 'e'
SELECT RIGHT('example', 1); -- 返回 'e'
-- 截取从第3个字符开始的5个字符
SELECT SUBSTRING('Hello, World!', 3, 5); -- 返回 'llo,'
-- 截取从第3个字符开始到末尾的所有字符
SELECT SUBSTRING('Hello, World!', 3); -- 返回 'lo, World!'
-- 截取最后一个字符
SELECT RIGHT('Hello, World!', 1); -- 返回 '!'
领取专属 10元无门槛券
手把手带您无忧上云