Я пытаюсь создать график количества сообщений пользователя за последние 6 месяцев с помощью Google Charts API.
Моя структура таблицы такая -
-> Userid - varchar(20)
-> Post_year - varchar(4)
-> Post_month - varchar(2)
Чтобы получить количество сообщений за последние 6 месяцев пользователем, у меня есть такой запрос ...
SELECT COUNT(*) AS count, `Post_year`, `Post_month`
FROM (`table`)
WHERE `Userid` = '1234'
AND `Post_year` >= '$year_offset'
AND `Post_month` >= '$month_offset'
GROUP BY `Post_year`, `Post_month`
Как видите, я сохраняю только год и месяц после записи, а затем использую переменную смещения для получения сообщений. Это работает как ...
Случай 1: если текущий год и месяц - 2010/12, то смещенные - 2010/7
Случай 2: если текущий год и месяц - 2011/1, то смещения - 2010/8
Теперь запрос в случае 1 работает нормально, как и предполагалось.
// Get all posts by a user
// ...
WHERE Post_year >= 2010
AND Post_month >= 7
Но в случае 2 это не так. Поскольку последняя часть запроса становится ...
// Get all posts by a user
// ...
WHERE Post_year >= 2010
AND Post_month >= 8
Следовательно, посты 2010/1 года не удовлетворяют условию Post_month >= 8
.
Как мне изменить свой запрос, чтобы он работал и в случае 2.
Привет