Задать вопрос
@Vadim1899

Запрос для получения уникальных значений и их количества?

Привет! Есть таблица вида:
id, date, userId, categoryId

userId может встречаться только один раз в табличке, категории могут дублироваться, их около 10.

Не совсем понимаю, как должен выглядеть запрос, чтобы получить такой ответ:
categoryId, count (count это грубо говоря SELECT COUNT(*) AS count from table WHERE categoryId = :categoryId)

Думал сделать так:
SELECT categoryId, (SELECT COUNT(*) AS count from table WHERE categoryId = :categoryId) AS count from table

Но записей в таблице очень много, и для каждого такого запроса будет выполняться по 10 SELECT-ов. Может есть решение получше?
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
@Akina
Сетевой и системный админ, SQL-программист.
SELECT categoryId, COUNT(*) AS `count`
FROM table
GROUP BY categoryId
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы