SQLite: Comment enregistrer le résultat d'une requête en tant que fichier CSV?

Je suis nouveau sur SQLite. Existe-t-il un moyen d'exporter les résultats d'une requête dans un fichier CSV?

131
demandé sur RayLoveless 2011-05-20 23:57:13

4 réponses

De ici et le commentaire de d5e5:

Vous devrez passer la sortie en mode csv et passer à la sortie de fichier.

sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
209
répondu gdw2 2014-06-27 20:04:58

Pour inclure des noms de colonnes dans votre fichier csv, vous pouvez procéder comme suit:

sqlite> .headers on
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout

Pour vérifier les modifications que vous avez effectuées, vous pouvez exécuter cette commande:

sqlite> .show

Sortie:

echo: off   
explain: off   
headers: on   
mode: csv   
nullvalue: ""  
output: stdout  
separator: "|"   
stats: off   
width: 22 18 
127
répondu Sai Bharath 2014-03-19 06:57:46

Bonnes réponses de gdw2 et d5e5. Pour le rendre un peu plus simple voici les recommandations rassemblées dans une seule série de commandes:

sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout
23
répondu crsierra 2013-05-27 22:16:20

En plus des réponses ci-dessus, vous pouvez également utiliser .once de la même manière que .output. Cela génère uniquement la requête suivante dans le fichier spécifié, de sorte que vous n'avez pas à suivre avec .output stdout.

Donc dans l'exemple ci-dessus

.mode csv
.headers on
.once test.csv
select * from tbl1;
13
répondu Mat 2017-01-13 17:51:05