Ответ 1
SELECT key1, key2, COUNT(id) FROM actions GROUP BY key1, key2 ORDER BY key1, key2
У меня есть следующая таблица
CREATE TABLE actions (id INTEGER PRIMARY KEY, key1 NUMERIC, key2 NUMERIC);
Я даже не знаю, как это объяснить, поэтому я думаю, что лучше всего привести пример:
id key1 key2
1 1 1
2 1 2
3 1 1
4 2 1
5 2 3
вывести что-то вроде этого:
key1 key2 count(id)
1 1 2
1 2 1
2 1 1
2 3 1
Я пробовал что-то вроде этого, но это не работает, потому что мне нужно, чтобы поле key1 не было уникальным:
Select key1,key2,count(id) from actions group by key2, order by key1
Спасибо большое
SELECT key1, key2, COUNT(id) FROM actions GROUP BY key1, key2 ORDER BY key1, key2
В предложении GROUP вам нужно написать all поля, которые не находятся в агрегировании (COUNT, MAX, MIN). Итак, в этом случае вам нужно добавить поле key1, как это:
Select key1, key2, count(id)
from actions
group by key1, key2
order by key1