将sql数据导出到.csv,并根据查询为每个表生成单独的.csv文件

ffdz8vbo  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(314)

目前,我正在使用go访问我的数据库。理想情况下,我希望根据表的名称生成.csv,并根据查询将数据导出到这些文件中。
例如,如果我运行:

select t1.*,t2.* from table1 t1 
inner join table2 t2 on t2.table_1_id = t1.id
where t1.linking_id = 22

我希望为表1和表2生成一个.csv文件,其中每个表中的数据都将生成,然后导出到这两个生成的文件中,这些文件的名称与表的名称相同。
我知道在php中我可以使用 $fp = fopen(getcwd().'/table1.csv', 'w'); fputcsv($fp, $columns); 使用表的行名称生成.csv文件。但是,我不认为go需要连续复制foreah列来生成单独的.csv文件。
我想要一些关于导出和生成sql数据到.csv文件的指导。
谢谢您!
我当前的导入设置是: import ( "database/sql" _ "github.com/go-sql-driver/mysql" "github.com/joho/sqltocsv" ) 我可以连接到我的数据库没有问题,并查询我的数据库时,通过初始化查询 rows, _:= db.Query(SELECT * FROM table1 WHERE id = 22) 我能够使用将查询数据写入预先存在的.csv文件 err = sqltocsv.WriteFile("results.csv", rows)

wwwo4jvm

wwwo4jvm1#

迭代 rows 每行都有一个循环
使用软件包 encoding/csv 写入csv文件。

相关问题