Таблица клиентов с покупками в диапазоне дат
Имея некоторый вызов, делая это.
Выберите всех клиентов, которые совершили более 2 покупок в день (24 часа), начиная с данного дня и времени, например. 2016-01-01.15: 30: 05
Select count(name) from cust_table where count(name)
IN (BETWEEN (2016-01-01.13:00:00, 2016-01-01.14:00:00))
Вам нужно получить идентификаторы (имена пользователей или идентификатор) для всех пользователей, совершивших более двух покупок. Должно работать следующее:
SELECT name FROM purchases GROUP BY name HAVING COUNT(name) > 2
Чтобы получить такие строки, где были сделаны покупки между некоторыми датами, просто добавьте предложение WHERE
, чтобы оно стало чем-то вроде этого
SELECT name FROM purchases WHERE pdate BETWEEN (2016-01-01.13:00:00) AND (2016-01-01.14:00:00) GROUP BY name HAVING COUNT(name) > 2
То, что это делает, - группировать строки таблицы по имени с покупками между указанными датами. Затем он фильтрует группы, используя предложение HAVING COUNT(name) > 2
, чтобы извлекать только строки, которые появляются более двух раз.