1

我只是 SQL 脚本的初学者,我有一个A包含以下格式的字符串值的字段:

X1|Y1 X2|Y2 X3|Y3 X4|Y4 X5|Y5

我正在尝试创建一个函数来替换空格,然后替换 | 有一个空格。之后,将 , 放在字符串的末尾,并将字符串“X1 Y1”中第一个空格逗号之前的字符粘贴到文本的末尾。因此,该字段中的结果文本B将如下所示:

X1 Y1,X2 Y2,X3 Y3,X4 Y4,X5 Y5,X1 Y1

字段 A 和 B 的类型为:ntext

注意:我尝试使用替换函数但收到错误消息:Argument data type ntext is invalid for argument 1 of replace function

谢谢

4

3 回答 3

2

在 SQL Server 2008R2 中:

SELECT REPLACE(@mystring,'|',',') + ' ' + REPLACE(LEFT(@mystring,CHARINDEX(' ',@mystring)-1),'|',',')

替换@mystring为您的字段名称。

于 2013-04-12T16:58:12.527 回答
1

您不能将REPLACE与 blob 字段一起使用,您应该先将其转换为字符串字段试试这个:

select replace(replace(cast(a as nvarchar(max)) + ' ' + left(cast(a as nvarchar(max)),
      charindex(' ', cast(a as nvarchar(max))) - 1),' ',','),'|',' ')
from aaa
于 2013-04-16T16:20:23.483 回答
1

MySQL:

Select Replace(colName,"|",",")
于 2013-04-12T16:41:18.727 回答