У меня возникла проблема с появлением правильной инструкции для обновления поля в той же таблице, что и триггер insert. Это для таблицы MySql.Trigger to Update value в таблице mysql
В принципе мне нужно, чтобы вставленное значение проверялось на базовый цвет в поле, поэтому, если поле: «Cobalt Blue», я хочу, чтобы цвет был вставлен в поле «Голубой».
Я уже придумал следующее заявление, чтобы получить правильный цвет, чтобы быть правильно:
SELECT CASE
WHEN 'value' LIKE '%blue%' THEN 'Blue'
WHEN 'value' LIKE '%red%' THEN 'Red'
ELSE 'Other color'
END AS normalized_color
FROM 'products_extra_fields'
WHERE 'products_extra_fields'.'value' = 'color'
Теперь рядом мне это нужно, чтобы быть в триггере на столе вставки WHERE «products_extra_fields» «значение». = 'color'.
Я просто не могу понять, как построить этот триггер, чтобы содержать UPDATE с оператором SELECT CASE.
Как ваше значение может быть '= 'color'' и' LIKE'% red% ''одновременно? Этот запрос всегда будет возвращать «Другой цвет». – Vatev
Значение «цвет» - это только имя поля в таблице «products_extra_fields». Это делается потому, что таблица содержит запись для каждого дополнительного поля, добавленного в таблицу продуктов. Это может сбивать с толку, но запрос работает эффективно, я получаю хороший список всех исправленных цветов, просто проверил его снова. – Hugo
Um .. ok .. какое поле имеет имя поля и которое имеет значение? – Vatev