我创建了一个sql视图,它返回了我所有必需的数据,效果很好。例如,视图列名称为CompanyName,Person,Title。我正在尝试编写一个报告(管道分隔),它将删除这些特殊字符:(“”,;〜,*)并返回数据,但不会永久更新视图或永久更新表。
示例:
Widgets & Widgets Joe President,Pro Tempore
应该成为
Widgets Widgets | Joe | President Pro Tempore
我在视图中进行查询,我的数据又回来了,但是没有任何替换函数会替换&符号,逗号,波浪号等。我只需要在sql中找到一个我可以导出到管道分隔文件。我不想永久更改数据,我只需要一次性报告。
有人可以帮忙吗? 感谢
答案 0 :(得分:0)
在SQL Server中(我不知道这是否是您的数据库),您可以使用REPLACE函数将您想要的任何字符替换为您选择的另一个字符。嵌套多个REPLACE调用,您可以使用单个语句替换所需的所有特殊字符。
示例:
SELECT REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(COLUMN_NAME,'"','|'),',','|'),';','|'),'~','|'),'*','|') FROM TABLE_NAME
答案 1 :(得分:0)
您只需更换,更换,替换:
select replace(replace(replace(replace(company + ' | ' + name + ' | ' + title, '~', ''
), ',', ''
), ';', ''
), '*', ''
)