【发布时间】:2014-10-26 18:54:44
【问题描述】:
我有一个查询,我试图选择另一行的内容并将其插入表中,但会更改特定值。在这里面,我试图使用Replace() 函数来替换给定列中的某些字符。
这是正确的还是我需要通过Update 声明将其取出并执行此操作?
这是我的 SQL 语句:
INSERT INTO [dbo].[PurchaseLogic]
([column1]
,[column2]
,[column3]
,[column4])
SELECT [column1]
,[column2]
,replace(column3, 'TextA','TextB')
,[column4]
FROM dbo.purchaselogic
WHERE column1 = 1
汉克斯
编辑
对不起,这是我执行时遇到的错误:
参数数据类型文本对于替换函数的参数 1 无效。
【问题讨论】:
-
看起来正确。你有什么问题吗?
-
这将起作用,因为您的替换是在您的选择语句中调用的。
-
错误在哪里??????你首先要什么???
-
您要替换数据库中的值还是只替换返回值?
-
ntext、text和image数据类型将在 SQL Server 的未来版本中删除。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用nvarchar(max)、varchar(max)和varbinary(max)。 See details here(似乎您的column3是text类型 - 将其更改为varchar(max)以便能够使用所有常用的字符串函数!)
标签: sql sql-server