SQLite má několik režimů a nastavení, které vám umožňují zobrazovat výsledky dotazů jako seznam oddělený čárkami.
Můžete například použít .separator
tečka k určení čárky jako oddělovače. Nebo můžete použít režim „quote“ k formátování výstupu jako řetězcové literály.
Pro účely tohoto článku však budu používat csv
režim, který formátuje výsledky jako seznam oddělený čárkami a také s dvojitými uvozovkami kolem řetězců. Vnitřní dvojité uvozovky jsou dvojité.
Příklad
V tomto příkladu přepnu na csv
režimu a poté vyberte data z databáze.
.mode csv
SELECT * FROM Products;
Výsledek:
1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0
Všimněte si, že vnitřní dvojité uvozovky byly dvojité, ale vnitřní jednoduché uvozovky nikoli.
Pokud to chcete vidět v porovnání s výchozím režimem SQLite (seznam oddělený potrubím), zde se používá tento režim.
.mode list
SELECT * FROM Products;
Výsledek:
1|Widget Holder|139.5 2|Widget Opener|89.7 3|Bob's "Best" Widget|374.2 4|Blue Widget|63.0
Přidat záhlaví sloupců
Můžete také přidat záhlaví sloupců (názvy sloupců) pomocí .headers on
.
.headers on
.mode csv
SELECT * FROM Products;
Výsledek:
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
Pokud chcete odstranit záhlaví, můžete použít .headers off
.
Uložte nastavení
Nastavením tohoto režimu se nastaví pouze pro aktuální relaci. Pokud otevřete nové připojení k SQLite, vrátí se zpět na výchozí nastavení.
Pokud chcete, aby vaše nastavení zůstalo zachováno, abyste nemuseli neustále měnit režim při každém připojení k SQLite, můžete svá nastavení uložit do .sqliterc soubor.
Chcete-li to provést, zadejte do prázdného textového souboru následující:
.headers on
.mode csv
Pak to uložte jako .sqliterc ve vašem domovském adresáři.
Nyní, když použijete shell příkazového řádku SQLite, nejprve zkontroluje váš .sqliterc soubor pro všechna nastavení.
GROUP_CONCAT()
Funkce
Alternativně můžete použít Group_Concat()
funkce pro převod výsledků dotazu na seznam oddělený čárkami ze samotného dotazu SQL.