Если выписка и выбор строки - PullRequest
0 голосов
/ 11 декабря 2018

Использование MYSQL.

Попытка написать оператор IF.

Имя таблицы: Erreur Имена столбцов: Компания, ID, Опубликован, Тип, Erreur_type и т. Д.

select * from erreur
where Erreur_type IS NOT NULL
IF Erreur_type = 1 Then SET Published = NULL
ELSE Erreur_type = 2 Then SET Type = 'Ordinaire'
ELSE Erreur_type = 3 Then SET TYPE = 'Extraordinaire'
END IF;

У меня вопрос, нужно ли: -Для выбора строки или я могу использоватьэтот код на несколько строк в один?

1 Ответ

0 голосов
/ 11 декабря 2018

если вы просто хотите выбрать результат, тогда

select 
     IF (Erreur_type = 1 , NULL,'your_else') as publised 
    , case when Erreur_type = 2 then 'Ordinaire'
            when  Erreur_type = 3 then  'Extraordinaire' 
    end AS Type
from erreur
where Erreur_type IS NOT NULL

в противном случае, если вы хотите изменить значения в db, используйте update и установите

update  erreur
set publised = case when  Erreur_type = 1 THEN null else  publised end, 
    Erreur_type = case when Erreur_type = 2 then 'Ordinaire'
                when  Erreur_type = 3 then  'Extraordinaire' 
        end 
where Erreur_type IS NOT NULL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...