RIGHT函数
返回最右边的len个字符的字符串str
RIGHT(a,b)
若 b 的值大于 a 的长度,则返回字符表达式的全部字符a.如果 b 为负值或 0,则返回空字符串.
SELECT RIGHT(‘foobarbar’, 4)
结果:rbar
LEFT函数
LEFT函数同理
CONVERT函数
SUBSTRING函数
在操作sqlserver时候用到了substring函数
SUBSTRING ( expression, start, length )
参数
expression
字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。
start
整数或可以隐式转换为 int 的表达式,指定子字符串的开始位置。
length
整数或可以隐式转换为 int 的表达式,指定子字符串的长度(但是结果并补一个返回length字符长度,要看expression的长度和start的设置!!!!!!!!!!!)。
返回值
如果 expression 是一种支持的字符数据类型,则返回字符数据。如果 expression 是一种支持的二进制数据类型,则返回二进制数据。如果 start = 1,则子字符串从表达式的第一个字符开始
需要补充一句的是,开始start位置的设置,确实如果设置为1,会从第一个字符开始计数,2,3,4…以此类推、
select substring(ziduan,1,6)
将会选择字段的前6个字符,比如说是200908
如果设置为0,
同样的执行select substring(ziduan,0,6)
结果会是20090,如果换成-1
同样执行select substring(ziduan,-1,6)
结果会是2009
同样-2,-3,…依次类推
STUFF函数
删除指定长度的字符,并在指定的起点处插入另一组字符。
STUFF ( character_expression , start , length ,character_expression )
参数
character_expression
一个字符数据表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。
start
一个整数值,指定删除和插入的开始位置。如果 start 或 length 为负,则返回空字符串。如果 start 比第一个 character_expression 长,则返回空字符串。start 可以是 bigint 类型。
length
一个整数,指定要删除的字符数。如果 length 比第一个 character_expression 长,则最多删除到最后一个 character_expression 中的最后一个字符。length 可以是 bigint 类型。
返回类型
如果 character_expression 是受支持的字符数据类型,则返回字符数据。如果 character_expression 是一个受支持的 binary 数据类型,则返回二进制数据。
select STUFF('abcdefg',1,0,'1234') --结果为'1234abcdefg'
select STUFF('abcdefg',1,1,'1234') --结果为'1234bcdefg'
select STUFF('abcdefg',2,1,'1234') --结果为'a1234cdefg'
select STUFF('abcdefg',2,2,'1234') --结果为'a1234defg'