替换空格,制表符和回车符

aCa*_*lla 3 sql oracle select replace

我正在使用Oracle 11g的SQL开发人员.我的查询看起来与此类似;

SELECT [column], [column], [column],...... rs.notes
FROM [table], [table], [table]............ return_sku rs
WHERE [conditions] AND [conditions] AND [conditions]
Run Code Online (Sandbox Code Playgroud)

return_sku列中有选项卡,空格和换行符(我相信这是一个回车符?)我需要在运行查询时使所有这些空格,回车符和制表符消失.

我对SQL很新,但我找到的最流行的搜索结果是REPLACE函数.我完全不知道如何使用它,因为我已经以许多不同的方式尝试了这一点而没有结果.我试过以下几点;

SELECT [column], [column], [column],...... REPLACE(rs.notes, Char(10), '')
FROM [table], [table], [table]............ return_sku rs
WHERE [conditions] AND [conditions] AND [conditions]
Run Code Online (Sandbox Code Playgroud)

这给出了错误消息:

ORA-00904: "RS"."NOTES": invalid identifier
00904. 00000 -  "%s: invalid identifier"
*Cause:    
*Action:
Error at Line: 3 Column: 531
Run Code Online (Sandbox Code Playgroud)

我该如何正确使用此功能?

ran*_*dcd 8

在Oracle中如果你只想删除一个字符,你可以省略replace调用的第三个参数,字符代码的函数是chr(),而不是char().

所以你的路线就是 SELECT ... replace(rs.notes,chr(10)) ...