Группируйте по количеству разных значений как одно в mysql

#mysql

Вопрос:

введите описание изображения здесь

Всем привет, у меня есть простая функция группирования, в которой я объединяюсь в таблицу и возвращаю количество, основанное на статусе. Проблема, с которой я столкнулся, заключается в том, что я хотел бы считать «Ожидающие» и «Отправленные на утверждение» в одном статусе, таком как код.

то есть, если «Ожидание» имеет 2 записи, а «Отправлено на утверждение» имеет 3 записи, то значение группы by должно быть 5. «Отклонено» и «Одобрено» должны по-прежнему работать так же, как и раньше. «Сброс» был намеренно опущен.

 `Select DISTINCT(UT.status), 
(SELECT Count(UnitRateID) 
FROM UnitRate UR join Telecom TC 
on UR.UnitOwnerID = TC.UnitOwnerID 
AND UR.WaterPeriodFrom = '".$MeterDateFrom."'
AND UR.WaterPeriodTo = '".$MeterDateTo."' 
AND TC.TelPeriodFrom = '".$MeterDateFrom."'
AND TC.TelPeriodTo = '".$MeterDateTo."' 
WHERE UR.status=UT.status
) as total
From UnitRate UT where status IN ('Pending','Sent For Approval','Approved','Rejected')
order by FIELD(status,'Pending','Sent For Approval','Rejected','Approved') ASC LIMIT 4`
 

Комментарии:

1. где вы группируетесь?

Ответ №1:

вы можете использовать суб sql — запрос со специальным условием, например

 select (select count(*) from table where status in ('Pending', 'Sent for approval')) as countname from table where condition