SUBSTRING 函数

可以使用 SUBSTRING 函数来返回字符串的某部分。指定开始位置长度(可选)来确定返回字符串的哪部分。可以指定正数或负数作为开始位置。开始位置 1 指定 SUBSTRING 函数从字符串的第一个位置开始。当开始位置为(0)或负数时,SUBSTRING 函数从字符串的开头开始向后计数。

下列查询显示 SUBSTRING 函数的一个示例,其返还查询返回的任何 sname 列值的前四个字符。在本示例中,SUBSTRING 函数从字符串的开头开始,返回开始位置开始的四个字符。

图: 查询

SELECT sname, SUBSTRING(sname FROM 1 FOR 4) FROM state 
          WHERE code = "AZ";

图: 查询结果

sname           (expression)
            
            Arizona         Ariz
在下列查询中,SUBSTRING 函数指定开始位置 6,但未指定长度。函数返回从字符串的第六个位置开始到字符串结尾的字符串。

图: 查询

SELECT sname, SUBSTRING(sname FROM 6) FROM state 
          WHERE code = "WV";

图: 查询结果

sname           (expression)
            
            West Virginia   Virginia 
在下列查询中,SUBSTRING 函数只返回查询返回的任何 sname 列值的第一个字符。对于 SUBSTRING 函数,开始位置 -2 表示从字符的开始位置向后数三个位置(0 、-1 、-2)(对于开始位置 0,函数从字符串的开始位置向后数一个位置)。

图: 查询

SELECT sname, SUBSTRING(sname FROM -2 FOR 4) FROM state 
          WHERE code = "AZ";

图: 查询结果

sname           (expression)
              
              Arizona         A