SQLite count, group и order by count - PullRequest
       25

SQLite count, group и order by count

31 голосов
/ 19 июля 2011

У меня есть таблица, которая выглядит так:

FOO  BAR  BAZ
----+----+----
foo1 bar1 baz1
foo2 bar3 baz2
foo3 bar1 baz3
foo4 bar1 baz4
foo5 bar3 baz5
foo6 bar1 baz6
foo7 bar2 baz7

И в результате я хотел бы получить счетчик того, сколько раз каждый столбец появился в таблице ... итак, выводm выглядит так:

BAR   COUNT
-----+-----
bar1    4
bar3    2
bar2    1

Могу ли я сделать запрос для чего-то подобного в SQLite?Я думаю, это должно быть довольно легко, но я не программист SQL ни в коем случае, и мне просто нужен этот простой запрос как часть скрипта Python .. Спасибо.

1 Ответ

42 голосов
/ 19 июля 2011
SELECT foo, count(bar) FROM mytable GROUP BY bar ORDER BY count(bar) DESC;

Оператор group by указывает агрегатным функциям группировать результат по столбцу.В этом случае «группа по столбцу» говорит подсчитать количество полей в столбце столбца, сгруппированных по различным «типам» столбца.

Лучшее объяснение здесь: http://www.w3schools.com/sql/sql_groupby.asp

...