Sql “如何填充”;x";到固定长度字符串的末尾

Sql “如何填充”;x";到固定长度字符串的末尾,sql,sql-server,Sql,Sql Server,此代码: select right('XXXXXXXXXXX' + 'BARCGB22', 11) 结果为:“XXXBARCGB22” 但我需要相反的方向,我很难做到。它需要: “BARCGB2xxx” 谁能帮我个忙吗 谢谢我假设BARCGB22来自一个变量。我会使用选择left(coalesce(myvar),+xxxxxxxxxx',11)`NULL有一种特殊的含义,它的行为与普通变量有点不同 编辑: 或者“…isNull(myvar)”,“…isNull()和coalesce()做的事情

此代码:

select right('XXXXXXXXXXX' + 'BARCGB22', 11)
结果为:“XXXBARCGB22”

但我需要相反的方向,我很难做到。它需要:

“BARCGB2xxx”

谁能帮我个忙吗


谢谢

我假设
BARCGB22
来自一个变量。我会使用
选择left(coalesce(myvar),+xxxxxxxxxx',11)
`NULL有一种特殊的含义,它的行为与普通变量有点不同

编辑:


或者“…isNull(myvar)”,“…
isNull()
coalesce()
做的事情差不多一样,但是
isNull
是T-SQL,而
coalesce`更通用。

我假设
BARCGB22
将来自一个变量。我会使用
选择left(coalesce(myvar),+xxxxxxxxxx',11)
`NULL有一种特殊的含义,它的行为与普通变量有点不同

编辑:


或者“…isNull(myvar)”,“
isNull()
coalesce()
做的事情差不多一样,但是
isNull
是T-SQL,而
coalesce`更通用。

如何
选择左('BARCGB22'+'xxxxxxxxxx',11)
@Shawn是的,这是一个实际的答案。你应该像汉克斯·肖恩那样写。我不知道为什么我在做你做的事情时会出错。把它作为答案贴出来,这样我就可以接受了。
select left('BARCGB22'+'xxxxxxxxxx',11)
@Shawn是的,这是一个实际的答案。你应该像汉克斯·肖恩那样写。我不知道为什么我在做你做的事情时会出错。把它作为答案贴出来,这样我就可以接受了。