首页 > 解决方案 > 将带有制表符和换行符的列从 Informix 数据库导出到 Excel

问题描述

在将带有 Tab 和新行的注释列从 Informix 数据库导出到 Excel 时需要帮助 - 我们有一个大查询,它从 Informix 数据库中获取大约 25 K 数据,请求将它们转储到 excel 文件以供使用。

查询已完成,其中一个评论列输入了制表符和新行,这导致 excel 中的记录跨越多行,导致更多的清理工作,因为大约 2 K 行有制表符/新行。

google了很多,没有可以直接在查询中使用的解决方案-如果有人遇到类似问题并且有解决方案,你能帮忙吗

标签: sqldatabasenewlineinformix

解决方案


为什么不在卸载之前使用 REPLACE() 之类的东西来删除换行符/制表符?

> create table t1(c1 varchar(200));
Table created.

> insert into t1 values ('test1'||chr(10)||'  test');
1 row(s) inserted.

> insert into t1 values ('test2'||chr(13)||chr(10)||'  test');
1 row(s) inserted.

> select * from t1;
c1  test1
      test

c1  test2
      test

2 row(s) retrieved.

> select replace(c1,chr(10),' ') from t1;
(expression)  test1   test
   testsion)  test2

2 row(s) retrieved.

> select replace(replace(c1,chr(10),' '),chr(13),' ') from t1;
(expression)  test1   test
(expression)  test2    test
2 row(s) retrieved.

> 

> unload to t1.unl select replace(replace(c1,chr(10),' '),chr(13),' ') from t1;
2 row(s) unloaded.

> !cat t1.unl
test1   test|
test2    test|
>                                                                               

推荐阅读