首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在T-SQL中删除字符串中的最后一个字符?

在T-SQL中删除字符串中的最后一个字符?
EN

Stack Overflow用户
提问于 2009-08-11 04:01:10
回答 20查看 481.7K关注 0票数 163

如何在T-SQL中删除字符串中的最后一个字符

例如:

代码语言:javascript
复制
'TEST STRING'

返回:

代码语言:javascript
复制
'TEST STRIN'
EN

回答 20

Stack Overflow用户

发布于 2009-08-10 20:02:54

例如:

代码语言:javascript
复制
DECLARE @String VARCHAR(100)
SET @String = 'TEST STRING'

-- Chop off the end character
SET @String = 
     CASE @String WHEN null THEN null 
     ELSE (
         CASE LEN(@String) WHEN 0 THEN @String 
            ELSE LEFT(@String, LEN(@String) - 1) 
         END 
     ) END


SELECT @String
票数 210
EN

Stack Overflow用户

发布于 2012-02-02 09:15:17

如果由于某些原因,您的列逻辑很复杂(当...然后..。否则..。end),则上面的解决方案会导致您必须在len()函数中重复相同的逻辑。复制相同的逻辑会变得一团糟。如果是这样,那么这是一个值得注意的解决方案。这个例子去掉了最后一个不需要的逗号。我终于找到了反向函数的用法。

代码语言:javascript
复制
select reverse(stuff(reverse('a,b,c,d,'), 1, 1, ''))
票数 117
EN

Stack Overflow用户

发布于 2009-08-10 20:03:21

试试这个:

代码语言:javascript
复制
select substring('test string', 1, (len('test string') - 1))
票数 68
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1256915

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档