Eu sou novo no SQLite. Existe uma maneira de exportar os resultados de uma consulta para um arquivo CSV?
Eu sou novo no SQLite. Existe uma maneira de exportar os resultados de uma consulta para um arquivo CSV?
Respostas:
A partir daqui e o comentário de d5e5:
Você precisará alternar a saída para o modo csv e alternar para a saída do arquivo.
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
Para incluir nomes de colunas no seu arquivo CSV, você pode fazer o seguinte:
sqlite> .headers on
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
Para verificar as alterações que você fez, você pode executar este comando:
sqlite> .show
Resultado:
echo: off
explain: off
headers: on
mode: csv
nullvalue: ""
output: stdout
separator: "|"
stats: off
width: 22 18
.output filename.csv
execução cria ou apaga o arquivo.
Como alternativa, você pode fazer isso em uma linha (testada no win10)
sqlite3 -help
sqlite3 -header -csv db.sqlite 'select * from tbl1;' > test.csv
Bônus: usando o PowerShell com cmdlet e pipe (|).
get-content query.sql | sqlite3 -header -csv db.sqlite > test.csv
em que query.sql é um arquivo que contém sua consulta SQL