Хочу подсчитать количество дней в которых продаж было более 18600

Рейтинг: 0Ответов: 1Опубликовано: 04.03.2023
SELECT  
  count(*)
FROM sales 
   GROUP BY sale_date (
      GROUP BY sale_id>186000)

функция сount(*) подсчитывает количество строк, то есть я смогу подсчитать в скольких днях продаж было больше 186000 (за продажу отвечает поле sale_id) для этого хочу сделать группу из групп ,cоздать группу из дат , в которых количество продаж больше 186000, но не могу найти нигде правильного синтаксиса. Заранее благодарю

Ответы

▲ 0Принят

Не совсем понятно, про поле sale_id. Это же просто уникальный идентификатор одной записи о продажи?

Посчитав COUNT(*) с группировкой по датам вы получите выборку, с числом продаж по дням, это будет подзапрос.

Далее сделайте запрос к результату выборки, добавив условие на то, чтобы число продаж за день было больше 186000 и посчитайте кол-во таких дней:

SELECT COUNT(*) FROM (
    SELECT COUNT(sale_id) AS cnt 
    FROM sales 
    GROUP BY sale_date
) as T2 
WHERE cnt > 186000;