unix - 格式化 sql 查询的输出并创建 csv
问题描述
我从 sql 查询得到的当前输出是
database_name database_size unallocated_space reserved data index_size unused
-------------- ------------------ ------------------ ------------- ------------- ------------- -------------
TEST 22200.00 MB 3160.41 MB 9256544 KB 6597072 KB 1559384 KB 1100088 KB
尝试以格式创建 csv
database_name,database_size,unallocated_space,reserved,data,index_size,unused
Test,22200.00 MB,3160.41 MB,9256544 KB,6597072 KB,1559384 KB,1100088 KB
我目前得到的输出
database_name,database_size,unallocated_space
Test,22200.00,MB,3160.41,MB,9256544,KB,6597072,KB,1559384,KB,1100088,KB
和
echo "database_name,database_size,unallocated_space" > $outfile
awk -F " " '{print $1","$2","$3",$4","$5","$6","$7}' $readFile >> $outfile
其中 readfile 是包含 sql 查询输出的文件,outfile 是 csv。
解决方案
你不能只是改变你的 SQL 查询,比如:
Select concat(database_name, ",", database_size, ",", ...) ...
像这样,之后您无需进行任何重新格式化。
当心,我写了“concat”,我不确定连接函数的正确名称。
推荐阅读
- html - Angular 之间有什么关系
和 ShadowDOM - powershell - 运行.ps1脚本时通过参数调用多个函数
- flutter - 创建可以双向滚动的列表视图
- azure-cosmosdb - 是否可以将本体与 CosmosDB 一起使用?
- python - networkx 说我的节点比实际的少
- web - flutter-web-preview stagehead 3.3.2 不支持 dart 2.3
- javascript - 带有感染代码的 HTA 文件。它是用HEX和其他方式编码的
- sql - 将第一笔订单数据汇总到所有订单 - Microsoft SQL Server
- google-cloud-platform - 在 gcp 上设置组织域
- sql - How to do perform where clause for multiple columns