2015-07-02 3 views
1

Мне нужно название месяца с отсутствующим и текущим счетом. Это мой запрос к базе данных:Отсутствует и присутствует счет с именем месяца

SELECT sid,COUNT(CASE WHEN STATUS ='A' THEN 1 END) AS absent_count,COUNT(CASE WHEN STATUS ='P' THEN 1 END) AS present_count, 
     MONTHNAME(attendance_date) AS `Month_Name` 
     FROM attendance 
     WHERE SID = '2' 
     AND campus_id = 2 
     GROUP BY sid; 

ответ

1

Там нет смысла в группе sid - это всегда будет '2', в соответствии с вашим пунктом where. Вместо этого, так как вы хотите, чтобы рассчитывать на название месяца, который должен появиться в пункте group by:

SELECT MONTHNAME(attendance_date) AS `Month_Name`, 
     COUNT(CASE WHEN STATUS ='A' THEN 1 END) AS absent_count, 
     COUNT(CASE WHEN STATUS ='P' THEN 1 END) AS present_count, 
FROM  attendance 
WHERE sid = '2' AND campus_id = 2 
GROUP BY MONTHNAME(attendance_date); 
+0

@ mureinik..thanks :) его работа в настоящее время – ahmed

+0

Там не может быть много смысла, но это хорошая практика – Strawberry

+0

@ земляника ты прав – ahmed