SQLite има няколко режима и настройки, които ви позволяват да извеждате резултатите от заявката като списък, разделен със запетая.
Например, можете да използвате .separator
dot команда, за да посочите запетая като разделител. Или можете да използвате режима „цитати“, за да форматирате изхода като низови литерали.
Въпреки това, за целите на тази статия ще използвам csv
режим, който форматира резултатите като разделен със запетая списък, както и с двойни кавички около низовете. Вътрешните двойни кавички са двойни кавички.
Пример
В този пример преминавам към csv
режим, след което изберете данни от базата данни.
.mode csv
SELECT * FROM Products;
Резултат:
1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0
Имайте предвид, че вътрешните двойни кавички бяха двойни кавички, но вътрешните единични кавички не бяха.
Ако искате да видите това в сравнение с режима по подразбиране на SQLite (списък, разделен с тръби), тук той използва този режим.
.mode list
SELECT * FROM Products;
Резултат:
1|Widget Holder|139.5 2|Widget Opener|89.7 3|Bob's "Best" Widget|374.2 4|Blue Widget|63.0
Добавяне на заглавки на колони
Можете също да добавите заглавки на колони (имена на колони), като използвате .headers on
.
.headers on
.mode csv
SELECT * FROM Products;
Резултат:
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
Ако искате да премахнете заглавки, можете да използвате .headers off
.
Запазете настройките си
Настройката на режима по този начин го задава само за текущата сесия. Ако отворите нова връзка към SQLite, тя ще се върне обратно към настройките по подразбиране.
Ако искате настройките ви да се запазват, така че да не се налага да променяте режима всеки път, когато се свързвате със SQLite, можете да съхранявате настройките си в .sqliterc файл.
За да направите това, въведете следното в празен текстов файл:
.headers on
.mode csv
След това го запазете като .sqliterc във вашата домашна директория.
Сега, когато използвате обвивката на командния ред на SQLite, тя първо ще провери вашия .sqliterc файл за всякакви настройки.
GROUP_CONCAT()
Функция
Като алтернатива можете да използвате Group_Concat()
функция за преобразуване на резултатите от заявката в списък, разделен със запетая, от самата SQL заявка.