Gelegentlich muß ich mit CSV-Dateien arbeiten und Auswertungen über diese erstellen oder die Sortierung ändern oder ein anderes Dateiformat erzeugen (beispielsweise Markdown).
Bislang habe ich dazu verwendet:
- Q
- eigene Shell-Skripte
Andere potentielle Lösungen/Hilfsmittel, die ich mir vorgemerkt aber noch nicht ausprobiert habe:
Nun scheint es so zu sein, dass man das auch sehr elegant mit SQLITE hinbekommen kann. Hier meine Erfahrungen damit!
Erste Tests
Zuerst habe ich einige grundlegende Tests ausgeführt. Die Erkenntnisse sind vielversprechend!
Testdatei
1 2 3 4 5 6 |
|
Simple Abfragen
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
Generierung von Markdown-Tabellen
Die Generierung von Markdown-Tabellen funktioniert mit sqlite3
von Ubuntu-20.04 leider
nicht, sie ist zu alt. Die Version von Ubuntu-22.04 bereitet (vermutlich) keine Probleme!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
Tiefergehende Tests
Mehrere CSV-Dateien
Die Verarbeitung mehrerer CSV-Dateien funktioniert problemlos! Man kann auch sehr leicht tabellenübergreifende SQL-Abfragen ausführen!
1 2 3 4 5 6 |
|
1 2 3 |
|
Kombinierte Abfrage:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
Trenner in Eingangsdateien
Der Trenner in Eingangsdateien kann sehr leicht angepasst werden,
einfach mittels .separator NEUER-TRENNER
einen neuen Trenner vorgeben!
1 2 3 |
|
Abfrage:
1 2 3 4 5 6 7 8 9 10 11 |
|
Trenner in Ausgabedateien
Der Trenner in Eingangsdateien kann sehr leicht angepasst werden,
einfach mittels .separator NEUER-TRENNER
einen neuen Trenner vorgeben!
1 2 3 4 5 6 7 8 9 |
|
Markdown als Eingangsformat
Funktioniert nicht so richtig!
1 2 3 4 |
|
Abfrage:
1 2 3 4 5 6 7 8 |
|
Links
- Q
- dsq
- octosql
- Binärgewitter Talk #299: HyperWie 12.07.2022
- Twitter – Post von Simon Willison
- sqlite
- Github – sqlite
Historie
- 2022-08-14: Neues Repo für CSV-Dateien: gitea –> github
- 2022-07-16: Erste Version