SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Formatuj wyniki zapytania SQLite jako listę oddzieloną przecinkami

SQLite ma kilka trybów i ustawień, które umożliwiają wyświetlanie wyników zapytania w postaci listy rozdzielanej przecinkami.

Na przykład możesz użyć .separator kropka, aby określić przecinek jako separator. Możesz też użyć trybu „cytat”, aby sformatować wyjście jako literały ciągu.

Jednak na potrzeby tego artykułu użyję csv tryb, który formatuje wyniki jako listę oddzieloną przecinkami, a także z podwójnymi cudzysłowami wokół łańcuchów. Wewnętrzne cudzysłowy są cudzysłowami.

Przykład

W tym przykładzie przełączam się na csv trybu, a następnie wybierz dane z bazy danych.

.mode csv
SELECT * FROM Products;

Wynik:

1,"Widget Holder",139.5
2,"Widget Opener",89.7
3,"Bob's ""Best"" Widget",374.2
4,"Blue Widget",63.0

Zwróć uwagę, że wewnętrzne cudzysłowy były cudzysłowami podwójnymi, ale wewnętrzny pojedynczy cudzysłów nie.

Jeśli chcesz to zobaczyć w porównaniu z domyślnym trybem SQLite (lista oddzielona pionami), tutaj używa tego trybu.

.mode list
SELECT * FROM Products;

Wynik:

1|Widget Holder|139.5
2|Widget Opener|89.7
3|Bob's "Best" Widget|374.2
4|Blue Widget|63.0

Dodaj nagłówki kolumn

Możesz także dodać nagłówki kolumn (nazwy kolumn), używając .headers on .

.headers on
.mode csv
SELECT * FROM Products;

Wynik:

ProductId,ProductName,Price
1,"Widget Holder",139.5
2,"Widget Opener",89.7
3,"Bob's ""Best"" Widget",374.2
4,"Blue Widget",63.0

Jeśli chcesz usunąć nagłówki, możesz użyć .headers off .

Zapisz swoje ustawienia

Ustawienie tego trybu w ten sposób ustawia go tylko na bieżącą sesję. Jeśli otworzysz nowe połączenie z SQLite, powróci ono do ustawień domyślnych.

Jeśli chcesz, aby Twoje ustawienia zostały zachowane, abyś nie musiał zmieniać trybu za każdym razem, gdy łączysz się z SQLite, możesz przechowywać swoje ustawienia w .sqliterc plik.

Aby to zrobić, wprowadź następujące dane do pustego pliku tekstowego:

.headers on
.mode csv

Następnie zapisz to jako .sqliterc w twoim katalogu domowym.

Teraz, gdy używasz powłoki wiersza poleceń SQLite, najpierw sprawdzi ona Twój .sqliterc plik dla dowolnych ustawień.

GROUP_CONCAT() Funkcja

Możesz alternatywnie użyć Group_Concat() funkcja konwersji wyników zapytania na listę oddzieloną przecinkami z samego zapytania SQL.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. android.database.sqlite.SQLiteCantOpenDatabaseException:nieznany błąd (kod 14):Nie można otworzyć bazy danych

  2. group_concat i jak używać numeru wiersza w sqlite

  3. Jak zaktualizować tabelę activeandroid po dodaniu nowej kolumny

  4. Najlepsze praktyki dotyczące luźnego łączenia danych i interfejsu użytkownika w systemie Android — Adapter, Filter, CursorLoader i ContentProvider

  5. Android:Wstawianie zbiorcze, gdy funkcja InsertHelper jest przestarzała