Я показываю ежемесячный пользователь, зарегистрированный в моем приложении. Для этого я использовал приведенный ниже запрос, который работает нормально. Но с этим запросом, если ни один пользователь не зарегистрирован в июне, то нет данных против июня. Я хочу строку с месяцем июнь и всей другой информацией, установленной на 0. Может кто-нибудь помочь мне с этим?
SELECT Month(createdon), count(*) as users,COUNT(if(roleid=1,1,NULL)) as instructor, COUNT(if(roleid=2,1,NULL)) as student FROM user_profile where Year(createdon) = Year(Now()) group by MONTH(createdon);
Я получаю вывод как:
Month(created on) | users | instructor | student |
3 | 4 | 3 | 1 |
4 | 7 | 5 | 2 |
Здесь 3 и 4 месяц соответствуют марту и апрелю соответственно.
Но фактический результат:
Month(created on) | users | instructor | student |
1 | 0 | 0 | 0 |
2 | 0 | 0 | 0 |
3 | 4 | 3 | 1 |
4 | 7 | 5 | 2 |
5 | 0 | 0 | 0 |
6 | 0 | 0 | 0 |