MySQL Query Result в виде указанной строки, если int равно - PullRequest
0 голосов
/ 28 марта 2019

MySQL

У меня есть следующий запрос

"SELECT Status, COUNT( ticket_id) AS total FROM tickets GROUP BY Status"

Что возвращает

Status ¦ Total  
0      ¦   3
2      ¦   1
3      ¦   6

Можно ли изменить результат на выражение, например, если

0 = Открыто, 1 = Удерживать, 2 = Ожидание ответа конечного пользователя, 3 = Решено, 4 = Закрыто.

Итак, результат запроса будет

Status                 ¦ Total  
Open                   ¦   3
Awaiting end user      ¦   1
Resolved               ¦   6

Любая помощь будет потрясающей, Ура!

1 Ответ

3 голосов
/ 28 марта 2019

Вам нужно case выражение:

select (case (Status) 
               when 0 then 'Open' 
               when 1 then 'Hold'
               when 2 then 'Awaiting End User Response'
               when 3 then 'Resolved'
               when 4 then 'Closed'
        end) as total, count(ticket_id) AS total 
from tickets t
group by (case (Status) 
               when 0 then 'Open' 
               when 1 then 'Hold'
               when 2 then 'Awaiting End User Response'
               when 3 then 'Resolved'
               when 4 then 'Closed'
          end);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...