在 SELECT 语句中使用函数 / 字符串处理函数 |
SUBSTR 函数的作用于 SUBSTRING 函数相同,但两个函数的语法有区别。
要返回字符串的一部分,指定开始位置和长度(可选)来确定 SUBSTR 函数返回子串的哪个部分。为 SUBSTR 函数指定的开始位置可以是正数,也可以是负数。然而,SUBSTR 函数用与 SUBSTRING 函数不同的方式处理开始位置中的负数。当开始位置是负数时,SUBSTR 函数从字符串的末尾开始向后计数,这取决于字符串的长度,而不是字符串包含词或可视字符的长度。SUBSTR 函数将开始位置中的零(0)或 1 识别为字符串中的第一个位置。
图: 查询
SELECT sname, SUBSTR(sname, -15, 5) FROM state WHERE code = "CA";
图: 查询结果
sname (expression) California Calif
要使用负数作为开始位置,需要指定求出的长度值。sname 列被定义为 CHAR(15),因此接受类型为 sname 的参数的 SUBSTR 函数可以将开始位置 0 、1 或 -15 用于函数来返回从字符串的第一个位置开始的字符串。
图: 查询
SELECT sname, SUBSTR(sname, 1, 5) FROM state WHERE code = "CA";