SQL данных подсчета запросов от точных двенадцати месяцев до - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь подсчитать общее количество сообщений электронной почты, которые были забронированы до февраля 2020 года с февраля 2019 года. В каждом столбце должно отображаться общее количество сообщений электронной почты после названия месяца и 12 месяцев назад от названия этого месяца.

Таблица что я использую

MYSQL TABLE

Запрос, который я использую сейчас, это

SELECT sub.monthNameYear, sub.monthName,        
       COUNT(*),
       (SUM(COUNT(*)) OVER (ORDER BY sub.monthNameYear)) as incrementBooking
FROM (SELECT DATE_FORMAT(`reservation_for`,'%Y-%m') as monthNameYear,
             DATE_FORMAT(`reservation_for`, '%M %Y') as monthName, 
             email,
             COUNT(*) AS cnt
      FROM `reservations`
      GROUP BY email, DATE_FORMAT(`reservation_for`, '%Y-%m'),
            DATE_FORMAT(`reservation_for`,'%M %Y')
      HAVING COUNT(*) > 1 
     ) sub
GROUP BY sub.monthNameYear, sub.monthName;

Результат, который я получаю из этого запрос Result generated from my query

Результат, за которым я хочу получить 12 месяцев, будет

count email following twelve months

1 Ответ

0 голосов
/ 19 марта 2020
select t1.monthNameYear as FromYear, count(*) as Count
from reservations`t1
inner join
reservations t2
where datediff(month, t1.monthNameYear, t2.monthNameYear)<12 
and datediff(month, t1.monthNameYear, t2.monthNameYear)>=0
group by t1.monthNameYear

Это то, что вы хотели?

...