Вы можете использовать MONTH()
метод
И просто используйте одну функцию для доступа к данным
public function getMonth($theMonthNumber){
$this->db->select('*');
$this->db->where('MONTH(Date)', $theMonthNumber);
$this->db->from('user_data');
$count = $this->db->count_all_results();
return $count;
}
А, как считать каждый месяц вход?
Попробуйте с этим запросом
SELECT MONTH(Date) as the_month, COUNT(*) as the_value
FROM user_data
WHERE user_data.user_id = "the_user_id_i_send"
GROUP BY MONTH(Date)
Если вы используете это с codeigniter, функция будет выглядеть так
function some_function_name($user_id){
$query = $this->db->query('the same query i wrote before')
->result_array();
return $query;
}
ожидаемый вывод должен быть массивом с ассоциативными ключами, связанными с месяцем, Пример вывода
echo json_encode($query[0]); //the first month where the user has registers
echo json_encode($query[3]); //the third month....and so on..
И, конечно, вы можете отфильтровать этот массив.
(Когда я вернусь домой, я постараюсь дополнить ответ.)
Надеюсь, мой ответ поможет вам