L'interfaccia della riga di comando di SQLite ha una piccola funzionalità utile in cui è possibile aprire i risultati della query SQL in un file Excel.
Quando esegui una query, invece di inviare la query alla tua console come farebbe normalmente, si apre invece come un foglio di calcolo di Excel (o LibreOffice o qualsiasi programma utilizzato dal tuo sistema per aprire i file CSV).
Hai due opzioni quando lo fai:
- Utilizza un file temporaneo
- Usa un file permanente (cioè salvalo per dopo)
Questo articolo copre entrambe le opzioni.
File temporaneo
Quando si utilizza l'opzione del file temporaneo, SQLite esegue questa operazione scrivendo un file temporaneo, quindi eliminandolo una volta che ha richiamato il gestore per i file CSV (ad esempio, Excel, LibreOffice, ecc.).
Per fare ciò, usa il .excel
o .once -x
comandi (.excel
è un alias per .once -x
).
Ecco un esempio per dimostrare l'utilizzo del metodo del file temporaneo utilizzando .excel
comando.
.excel
SELECT * FROM Products;
Il mio sistema attualmente utilizza LibreOffice per aprire file CSV, quindi quando ho eseguito quel codice, ha aperto automaticamente il file in LibreOffice. Dato che lo stava aprendo come foglio di calcolo, ho ricevuto il solito prompt "Importa" in cui posso selezionare i separatori da utilizzare, ecc.
Queste sono le impostazioni predefinite e sembrano a posto. Quindi, una volta che ho fatto clic su OK
, ho questo:
Aggiungi intestazioni di colonna
Puoi usare .headers on
per aggiungere i nomi delle colonne.
Ecco un altro esempio in cui aggiungo le intestazioni di colonna. In questo caso, utilizzo .once -x
invece di .excel
(come accennato, .excel
è un alias per .once -x
).
.headers on
.once -x
SELECT * FROM Products;
Risultato:
E una volta fatto clic su OK
, ho questo:
Quindi è la stessa cosa, tranne che questa volta ho specificato le intestazioni di colonna.
File permanente
Quando si utilizza l'opzione file permanente, prima si salva il file in una posizione specifica, quindi si utilizza il .system
comando per aprire quel file.
Puoi usare .output
o .once
per salvare i risultati in un file, quindi utilizzare il .system
comando per aprire il file di testo.
Ecco come farlo su un Mac:
.headers on
.mode csv
.once query_results.csv
SELECT * FROM Products;
.system open query_results.csv
Ciò presuppone che ti trovi nella stessa directory del file. Altrimenti dovrai utilizzare il percorso completo.
Il .system
comando apre il file utilizzando l'applicazione predefinita per l'apertura di file CSV.
Su un sistema Windows, il tuo .system
il codice potrebbe assomigliare di più a questo:
.system c:/data/query_results.csv
Su Linux/Unix:
.system xdg-open query_results.csv