SQLite:如何将查询结果保存为 CSV 文件?
有没有办法可以将查询结果导出到 CSV 文件中?
Is there a way I can export the results of a query into a CSV file?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
有没有办法可以将查询结果导出到 CSV 文件中?
Is there a way I can export the results of a query into a CSV file?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(7)
来自 此处 和 d5e5 的评论:
您必须将输出切换到 csv 模式并切换到文件输出。
From here and d5e5's comment:
You'll have to switch the output to csv-mode and switch to file output.
要将列名称包含到 csv 文件中,您可以执行以下操作:
要验证您所做的更改,您可以运行以下命令:
输出:
To include column names to your csv file you can do the following:
To verify the changes that you have made you can run this command:
Output:
除了上述答案之外,您还可以以与
.output
类似的方式使用.once
。这仅将下一个查询输出到指定的文件,因此您不必遵循.output stdout
。所以在上面的例子中
In addition to the above answers you can also use
.once
in a similar way to.output
. This outputs only the next query to the specified file, so that you don't have to follow with.output stdout
.So in the above example
或者,您可以在一行中完成(在 win10 中测试)
额外奖励:使用带 cmdlet 和管道 (|) 的 powershell。
其中 query.sql 是包含 SQL 查询的文件
Alternatively you can do it in one line (tested in win10)
Bonus: Using powershell with cmdlet and pipe (|).
where query.sql is a file containing your SQL query
gdw2 和 d5e5 给出了很好的答案。为了使其更简单,这里将建议集中在一系列命令中:
Good answers from gdw2 and d5e5. To make it a little simpler here are the recommendations pulled together in a single series of commands:
所有现有的答案只能在 sqlite 命令行中使用,如果您想构建可重用的脚本,这并不理想。 Python 可以轻松构建可以编程执行的脚本。
您可以自定义查询以仅将部分 sqlite 表导出到 CSV 文件。
您还可以运行单个命令将所有 sqlite 表导出到 CSV 文件:
请参阅 此处了解更多信息。
All the existing answers only work from the sqlite command line, which isn't ideal if you'd like to build a reusable script. Python makes it easy to build a script that can be executed programatically.
You can customize the query to only export part of the sqlite table to the CSV file.
You can also run a single command to export all sqlite tables to CSV files:
See here for more info.
虽然
.mode csv
和.output
(或.once
)命令很好,但它们只能在 SQLite 命令行界面(又名Windows 上的 >sqlite.exe
)。如果您不使用 CLI,您仍然可以借助 sqlean-fileio 扩展,使用
fileio_append(path, string)
函数。例如:
之后,
people.csv
将具有以下内容:While
.mode csv
and.output
(or.once
) commands are fine, they only work in SQLite command-line interface (akasqlite.exe
on Windows).If you are not using the CLI, you can still write to an output file with the help of sqlean-fileio extension, using
fileio_append(path, string)
function.For example:
After that,
people.csv
will have the following content: