De SQLite-opdrachtregelinterface heeft een handige kleine functie waarmee u uw SQL-queryresultaten in een Excel-bestand kunt openen.
Wanneer u een query uitvoert, wordt de query niet zoals gewoonlijk naar uw console uitgevoerd, maar wordt deze in plaats daarvan geopend als een Excel-spreadsheet (of LibreOffice, of welk programma uw systeem ook gebruikt om CSV-bestanden te openen).
Je hebt hierbij twee opties:
- Gebruik een tijdelijk bestand
- Gebruik een permanent bestand (d.w.z. bewaar het voor later)
Dit artikel behandelt beide opties.
Tijdelijk bestand
Bij gebruik van de tijdelijke bestandsoptie doet SQLite dit door een tijdelijk bestand te schrijven en dat bestand vervolgens te verwijderen zodra het de handler voor CSV-bestanden heeft aangeroepen (bijv. Excel, LibreOffice, enz.).
Gebruik hiervoor de .excel
of .once -x
opdrachten (.excel
is een alias voor .once -x
).
Hier is een voorbeeld om te demonstreren met behulp van de tijdelijke bestandsmethode met behulp van de .excel
commando.
.excel
SELECT * FROM Products;
Mijn systeem gebruikt momenteel LibreOffice om CSV-bestanden te openen, dus toen ik die code uitvoerde, werd het bestand automatisch geopend in LibreOffice. Aangezien het als een spreadsheet werd geopend, kreeg ik de gebruikelijke "Import" -prompt waar ik de te gebruiken scheidingstekens kan selecteren, enz.
Dit zijn de standaardinstellingen en ze zien er goed uit. Dus toen ik eenmaal op OK
. klikte , ik heb dit:
Kolomkoppen toevoegen
U kunt .headers on
om de kolomnamen toe te voegen.
Hier is nog een voorbeeld waarbij ik de kolomkoppen toevoeg. In dit geval gebruik ik .once -x
in plaats van .excel
(zoals vermeld, .excel
is een alias voor .once -x
).
.headers on
.once -x
SELECT * FROM Products;
Resultaat:
En zodra ik klik op OK
, ik krijg dit:
Het is dus hetzelfde, behalve dat ik deze keer kolomkoppen heb gespecificeerd.
Permanent bestand
Als u de optie permanent bestand gebruikt, slaat u het bestand eerst op een opgegeven locatie op, daarna gebruikt u het .system
commando om dat bestand te openen.
U kunt .output
. gebruiken of .once
om de resultaten in een bestand op te slaan, gebruik dan de .system
commando om uw tekstbestand te openen.
Zo doet u dit op een Mac:
.headers on
.mode csv
.once query_results.csv
SELECT * FROM Products;
.system open query_results.csv
Dit veronderstelt dat u zich in dezelfde map bevindt als het bestand. Anders moet je het volledige pad gebruiken.
Het .system
commando opent het bestand met de standaardtoepassing voor het openen van CSV-bestanden.
Op een Windows-systeem, uw .system
code kan er meer als volgt uitzien:
.system c:/data/query_results.csv
Op Linux/Unix:
.system xdg-open query_results.csv