我想在我的 SQL 值中从左侧修剪字符:
我有以下价值:
ABC0005953
如何从左侧修剪值 3 个字符?我想看看:
005953
编辑我的价值是:
SELECT LEN(TABLE.VALUE)-3)
我想在我的 SQL 值中从左侧修剪字符:
我有以下价值:
ABC0005953
如何从左侧修剪值 3 个字符?我想看看:
005953
编辑我的价值是:
SELECT LEN(TABLE.VALUE)-3)
SELECT SUBSTRING('ABC0005953', 4, LEN('ABC0005953'))
从第四个字符开始并继续前进。
(只是发布作为解决方案的替代RIGHT(...)
方案。)
为了响应您的更新,我假设您的意思是要将上述内容应用于您的表格:
SELECT SUBSTRING(TABLE.VALUE, 4, LEN(TABLE.VALUE))
FROM TABLE
从你的另一个问题:
我有以下内容:
选择不同的
左(GIFTHEADER.pID + GIFTHEADER.PID + '-' + Cast(PAYMENTDETAIL.PLINENO 作为 Varchar),18)
作为交易参考...
目前我的价值是这样的:
ABC0005953ABC0005953
我想简单地从 GIFTHEADER.pID 中去掉前 4 个字符
如果要从中删除前四个字符GIFTHEADER.pID
,我建议在将值放入组合字符串之前删除它们:
SELECT DISTINCT
LEFT(SUBSTRING(GIFTHEADER.pID, 5, LEN(GIFTHEADER.pID) +
GIFTHEADER.PID +
'-' +
Cast(PAYMENTDETAIL.PLINENO as Varchar),18)
AS TRANSACTIONREF
您可以使用STUFF
函数将字符 1 到 3 替换为空字符串
SELECT STUFF('ABC0005953',1,3,'')
我相信这是一种比剪线更好、更通用的方法。
SELECT RIGHT('ABC0005953', LEN('ABC0005953') - 3)
两种选择:
SELECT SUBSTRING('ABC0005953', 5,7)
SELECT RIGHT('ABC0005953', (LEN('ABC0005953') - 4))
也许你可以使用 right(x, len(x)-3)