SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Automatisches Öffnen von SQLite-Abfrageergebnissen in Excel

Die SQLite-Befehlszeilenschnittstelle verfügt über eine praktische kleine Funktion, mit der Sie Ihre SQL-Abfrageergebnisse in einer Excel-Datei öffnen können.

Wenn Sie eine Abfrage ausführen, wird die Abfrage nicht wie gewohnt an Ihre Konsole ausgegeben, sondern als Excel-Tabelle (oder LibreOffice oder ein beliebiges Programm, das Ihr System zum Öffnen von CSV-Dateien verwendet) geöffnet.

Dabei haben Sie zwei Möglichkeiten:

  • Verwenden Sie eine temporäre Datei
  • Verwenden Sie eine permanente Datei (d. h. speichern Sie sie für später)

Dieser Artikel behandelt beide Optionen.

Temporäre Datei

Wenn Sie die Option für temporäre Dateien verwenden, tut SQLite dies, indem es eine temporäre Datei schreibt und diese Datei dann löscht, sobald es den Handler für CSV-Dateien (z. B. Excel, LibreOffice usw.) aufgerufen hat.

Verwenden Sie dazu entweder die .excel oder .once -x Befehle (.excel ist ein Alias ​​für .once -x ).

Hier ist ein Beispiel, das die Verwendung der temporären Dateimethode mit .excel demonstriert Befehl.

.excel
SELECT * FROM Products;

Mein System verwendet derzeit LibreOffice zum Öffnen von CSV-Dateien. Als ich diesen Code ausführte, wurde die Datei automatisch in LibreOffice geöffnet. Da es als Tabellenkalkulation geöffnet wurde, erhielt ich die übliche Eingabeaufforderung „Importieren“, wo ich die zu verwendenden Trennzeichen usw. auswählen kann.

Dies sind die Standardeinstellungen und sie sehen gut aus. Also habe ich einmal auf OK geklickt , ich habe das hier:

Spaltenüberschriften hinzufügen

Sie können .headers on verwenden um die Spaltennamen hinzuzufügen.

Hier ist ein weiteres Beispiel, in dem ich die Spaltenüberschriften hinzufüge. In diesem Fall verwende ich .once -x statt .excel (wie erwähnt, .excel ist ein Alias ​​für .once -x ).

.headers on
.once -x
SELECT * FROM Products;

Ergebnis:

Und sobald ich auf OK klicke , bekomme ich das:

Es ist also dasselbe, außer dass ich dieses Mal Spaltenüberschriften angegeben habe.

Permanente Datei

Wenn Sie die permanente Dateioption verwenden, speichern Sie die Datei zuerst an einem bestimmten Ort und verwenden dann das .system Befehl zum Öffnen dieser Datei.

Sie können .output verwenden oder .once Um die Ergebnisse in einer Datei zu speichern, verwenden Sie dann .system Befehl, um Ihre Textdatei zu öffnen.

So geht's auf einem Mac:

.headers on
.mode csv
.once query_results.csv
SELECT * FROM Products;
.system open query_results.csv

Dies setzt voraus, dass Sie sich im selben Verzeichnis wie die Datei befinden. Andernfalls müssen Sie den vollständigen Pfad verwenden.

Das .system Der Befehl öffnet die Datei mit der Standardanwendung zum Öffnen von CSV-Dateien.

Auf einem Windows-System Ihr .system Code könnte eher so aussehen:

.system c:/data/query_results.csv

Unter Linux/Unix:

.system xdg-open query_results.csv