SQLite3 посчитать, сколько считается? - PullRequest
1 голос
/ 18 марта 2019

Я изучаю SQLite3 и у меня проблемы с этим конкретным выводом.Допустим, у меня есть такой столбец:

user0
user1
user1
user2
user2
user3
user3
user3
user4
user4
user4
user4

Я хотел бы посчитать, сколько раз пользователь появляется в столбце, и у него есть вывод, например:

1 | 1
2 | 2
1 | 3
1 | 4

Значение: Там1 пользователь появляется 1 раз, 2 пользователя появляется 2 раза, 1 пользователь появляется 3 раза, 1 пользователь появляется 4 раза.

Мне больше ничего не нужно знать, только сколько пользователей и сколько аккаунтов.

Ответы [ 2 ]

1 голос
/ 18 марта 2019

Вы group by один раз, чтобы получить счетчики нужного вам 1-го столбца, а затем снова результат:

select count(*) total, counter
from (
  select count(*) counter 
  from tablename
  group by col
)
group by counter

См. Демоверсию
Результаты:

| total | counter |
| ----- | ------- |
| 1     | 1       |
| 2     | 2       |
| 1     | 3       |
| 1     | 4       |
0 голосов
/ 18 марта 2019

Вот небольшой пример использования GROUP BY и функции COUNT ().Я использую MSSQL, но он должен быть почти таким же в SQLITE3.Это таблица, которую я использую:

enter image description here

select count([name]), [name] from Test
group by [name]

Это результат:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...