我在SQL Server数据库中有一个带有NTEXT列的表。该列可能包含用双引号引起来的数据。当我查询此列时,我想删除这些前导和尾随引号。

例如:

“这是测试消息”

应该成为

这是一条测试信息

我知道LTRIM和RTRIM函数,但是这些仅适用于空格。关于可以使用哪些功能的建议。

最佳答案

我刚刚在MS SQL 2008中测试了此代码,并对其进行了验证。

删除最左边的报价:

UPDATE MyTable
SET FieldName = SUBSTRING(FieldName, 2, LEN(FieldName))
WHERE LEFT(FieldName, 1) = '"'

删除最右引号:(已修订,以避免从隐式类型转换为int时出错)
UPDATE MyTable
SET FieldName = SUBSTRING(FieldName, 1, LEN(FieldName)-1)
WHERE RIGHT(FieldName, 1) = '"'

关于sql - 如何删除SQL Server中的前导和尾随引号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1066134/

10-11 04:48