#sql #group-by #count #subquery #sql-date-functions
#sql #группировка по #подсчет #подзапрос #sql-функции даты
Вопрос:
— Сколько клиентов размещали заказы каждый месяц?
Таблица: Клиент
Желаемый результат:
Мой код, который дает желаемый результат:
with abc as (select concat(year(order_date),'/', month(order_date)) "date",customer_id
from customer
group by 1,2
order by 1)
select date,count(*) "customers_who_ordered"
from abc
group by 1;
Мне не нужен подзапрос или запрос CTE. Есть ли способ получить тот же результат в одном запросе?
Комментарии:
1. Пометьте свой вопрос базой данных, которую вы используете.
Ответ №1:
Вы можете попробовать следующее —
select concat(year(order_date),'/', month(order_date)) "date",count(distinct customer_id)
from customer
group by concat(year(order_date),'/', month(order_date))