Replace Vertica新品CR LF更换

Replace Vertica新品CR LF更换,replace,newline,vertica,Replace,Newline,Vertica,我在vertica中有一个专栏,我希望将其导出到.csv。 问题是,该列在中间有CRLF,这意味着导出将每个行读取为两行。输入示例(EOF分隔符是从Vertica复制粘贴的): 我尝试了替换选项,但它不替换序列 select TABLE, REPLACE(column_name, '\r\n', 'FUFU') from DB; 该命令会替换随机字母 因此,我开始怀疑是否有一个CRLF(记事本++找到了它),或者是否有一些其他字符隐藏在那里,我无法替换 如果您能提供有关新行的其他可能原因(我尝

我在vertica中有一个专栏,我希望将其导出到.csv。 问题是,该列在中间有CRLF,这意味着导出将每个行读取为两行。输入示例(EOF分隔符是从Vertica复制粘贴的):

我尝试了替换选项,但它不替换序列

select TABLE, REPLACE(column_name, '\r\n', 'FUFU') from DB;
该命令会替换随机字母

因此,我开始怀疑是否有一个CRLF(记事本++找到了它),或者是否有一些其他字符隐藏在那里,我无法替换

如果您能提供有关新行的其他可能原因(我尝试过\n、\c、\r和任何可能的组合…)或如何在记事本以外的地方查看它(直接在Vertica?)的任何帮助,我们将不胜感激

或者,我发现没有办法在Vertica中明确定义导出时的EOF字符-是否存在类似的情况?
谢谢

您可能想在Vertica的SQL参考手册中检查如何使用扩展字符串文本

例如:

create table a ( id integer , txt varchar(20) ) ;
insert into a values ( 1 , 'abc' ) ;
insert into a values ( 2 , e'def\r\nrghi' ) ;
insert into a values ( 3 , e'ij\r\nklm' ) ;
insert into a values ( 4 , 'poq' ) ; 
然后,要用空格替换\r\n序列(例如):

SQL=> select id, replace(txt, e'\r\n', ' ' ) from a order by id ;
 id | replace  
----+----------
  1 | abc
  2 | def rghi
  3 | ij klm
  4 | poq
(4 rows)

你注意到区别了吗?”\r\n'-->E'\r\n'
SQL=> select id, replace(txt, e'\r\n', ' ' ) from a order by id ;
 id | replace  
----+----------
  1 | abc
  2 | def rghi
  3 | ij klm
  4 | poq
(4 rows)
 REGEXP_REPLACE(text, '(?>\r\n|\n|\r)', ' ')