Получение среднего количества заказов в день с использованием mysql - PullRequest
1 голос
/ 28 ноября 2011

У меня следующая структура таблицы:

ID, User_ID, DateTime

Который хранит идентификатор пользователя и дату и время покупки заказа. Как бы я мог получить среднее количество заказов в день по каждому ряду?

В псевдокоде я думаю:

  1. Получить общее количество заказов
  2. Получить количество дней в диапазоне (от первого ряда до последнего ряда).
  3. Разделите 1. на 2. чтобы получить среднее значение *

Значит, мне вернули бы значение 50 или 100?

Спасибо

Ответы [ 2 ]

2 голосов
/ 28 ноября 2011

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

select count(*) / <days>
from mytable
where DateTime between <start> and <end>

Где вы указываете указанные значения, потому что вы их знаете.

0 голосов
/ 28 ноября 2011
select DATEDIFF(NOW(), date_time) as days, AVG(count(*))
from table 
group by days

Я не проверял запрос, это просто идея, думаю, он должен работать.

...