Sono nuovo di SQLite. Esiste un modo per esportare i risultati di una query in un file CSV?
Sono nuovo di SQLite. Esiste un modo per esportare i risultati di una query in un file CSV?
Risposte:
Da qui e il commento di d5e5:
Dovrai cambiare l'output in modalità CSV e passare all'output del file.
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
Per includere i nomi delle colonne nel file CSV è possibile effettuare le seguenti operazioni:
sqlite> .headers on
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
Per verificare le modifiche apportate è possibile eseguire questo comando:
sqlite> .show
Produzione:
echo: off
explain: off
headers: on
mode: csv
nullvalue: ""
output: stdout
separator: "|"
stats: off
width: 22 18
.output filename.csvesecuzione crea o cancella il file.
In alternativa puoi farlo in una riga (testato in win10)
sqlite3 -help
sqlite3 -header -csv db.sqlite 'select * from tbl1;' > test.csv
Bonus: utilizzo di PowerShell con cmdlet e pipe (|).
get-content query.sql | sqlite3 -header -csv db.sqlite > test.csv
dove query.sql è un file contenente la tua query SQL