SQL - добавление категории к строковому значению (таблица сопоставления) - PullRequest
0 голосов
/ 17 апреля 2020

Я пытаюсь воспроизвести сопоставление, которое я ранее получил из внешнего файла Excel, в запрос SQL. Я указал c ошибок в виде строки (например, "aborted", "timeout"). Упрощенный пример:

count   last_error
452     user_aborted
889     timeout
212     request_denied
98      blacklisted_by_admin
789     login_unsuccessful
340     country_not_available

Я хотел бы сопоставить их с определенными категориями, чтобы в результате появился новый столбец с категорией ошибок:

count   last_error                 error_category
452     user_aborted               user 
889     timeout                    tech
212     request_denied             risk
98      blacklisted_by_admin       risk
789     login_bad                  user
340     country_not_available      tech   

Что такое лучший способ сделать это? У меня около 40 ошибок и шесть категорий.

1 Ответ

0 голосов
/ 17 апреля 2020

Вы можете сделать case утверждение следующим образом

case 
    when last_error in ('user_aborted', 'login_bad') then 'user'
    when last_error in ('request_denied', 'blacklisted_by_admin') then 'risk'
    when last_error in ('timeout', 'country_not_available') then 'tech'
end as error_category
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...