1 2 syntax for substring: substring(expression, start, length) expression 字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。 start 整数或可以隐式转换为int 的表达式,指定子字符串的开始位置。 length 整数或可
1
2
syntax for substring:
substring(expression, start, length)
expression
字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。
start
整数或可以隐式转换为int 的表达式,,指定子字符串的开始位置。
length
整数或可以隐式转换为 int 的表达式,指定子字符串的长度。
例子:
1、起始位置为0,截取长度为3
?
1
select substring(dwmc,0,3) as sub,dwmc as dwmc from dw where dwnm='00010010'
结果:
2、起始位置为1,截取长度为3
?
1
select substring(dwmc,1,3) as sub,dwmc as dwmc from dw where dwnm='00010010'
结果:
3、起始位置为-1,截取长度为3
?
1
select substring(dwmc,-1,3) as sub,dwmc as dwmc from dw where dwnm='00010010'
结果:
4、起始位置为-2,截取长度为3
?
1
select substring(dwmc,-2,3) as sub,dwmc as dwmc from dw where dwnm='00010010'
结果:
5、起始位置为-9,截取长度为3
?
1
select substring(dwmc,-9,3) as sub,dwmc as dwmc from dw where dwnm='00010010'
结果:
通过上面的例子,可以看出substring的截取,类似于x坐标上截取绝对长度,而对于字符串而言,负数及零的位置都是空,真正有数的位置是从1开始的!