Linux环境下达梦数据库如何导出指定sql查询的数据

先说需求:我在linux上部署的达梦数据库。现在需要查询一些数据并分列导出到excel文件内。

这个如果是在windows管理工具上面非常方便,sql查询复制到excel或者直接导出excel就能做到。但是在linux上怎么做呢?

解决方法:使用 spool命令。

spool命令是在达梦数据库中用来将SQL执行结果输出到文件中的命令。可以使用spool命令设置输出文件的路径和文件名,以及输出格式等。在执行spool命令后,达梦数据库会将SQL执行结果输出到指定的文件中,方便用户进行后续处理和分析。

下面简单演示一下。

先登录数据库

使用spool命令指定要输出的文件 spool /usr/local/out.csv

需要注意的是,spool并不会自动去创建不存在的目录和文件,所以需要确保后面跟上的路径和文件是在当前服务器真实存在的。(简单的说就是先去创建一个空的文件)

spool命令指定之后我们就正常输入你的sql查询语句执行。

比如 SELECT  列1,列2 FROM 模式名.表名

sql语句执行之后需要执行 spool off;    命令,将sql查询结果写入到你指定的文件内。

好,现在数据已经写入。我们把在服务器上创建的csv文件下载到本地打开

可以看到,数据已经写入,接下来我们需要根据需求把数据内容分列。

这里推荐一个方式,查询sql的时候指定自己的分隔符号,比如(^)。

我这边演示下 使用 SELECT  列1||'^'||列2 FROM 模式名.表名  查询

打开csv文件,并指定分列。先将不需要的数据删除,只留需要分列的数据

选择上方数据选择卡,选中需要分列的A列。点击选项卡下发的分列选择按钮

选择分列之后,选择分割符号,下一步

选择其他,将我们定义的分隔符 ^ 输入

点击完成,即可将数据分列

至此,需求实现。

此文仅供参考。更多达梦数据库相关命令可以搜索官方文档进行阅读。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值