У меня есть таблица с такими колонками: (id int, str varchar). Как можно вывести общее количество строк, где id равен какому-то числу (нужен формат id, количество строк)? Я пытался сделать так: select id, count(*) from table where id=10;
Тут psql мне говорит, что id должен участвовать в group_by или агрегатной функции. Что я делаю не так?
Также интересно, как получить количество строк с уникальными id. Я нашел функцию distinct, но она возвращает сами строки, а не их количество. Можно как-то получить именно число?
Вот мне не очень понятно, как работает COUNT. Я понимаю принцип работы первой строки вот так: выбираем id, равные 10, потом группируем их (то есть должны убраться дубликаты), потом уже в этом результате считается количество ненулевых элементов в столбце id. Это верно?
Как-то сложновато понимать, в каком порядке всё это выполняется. Есть ли правила на этот счёт?