Я пытаюсь создать триггер вставки, который возьмет два строковых поля (x и y) из таблицы A и объединит их в одно поле в таблице B. Если y не равно нулю, я хочу добавить '-'между х и у, когда я соединяю.Пока что мой код выглядит следующим образом:
BEGIN
INSERT INTO B(xy,z)
SELECT y,z,
CASE WHEN y IS NOT NULL then concat('some prefix',x,' - ',y)
ELSE concat('some prefix',x)
END
FROM(SELECT NEW.x, NEW.y NEW.z) as n;
WHERE [some conditions]
RETURN NEW;
END;
Насколько я понимаю, в поле xy таблицы B и z следует поместить «некоторый префикс x - y» или «некоторый префикс x»A в z of B, но я получаю ошибку "INSERT имеет больше выражений, чем целевых столбцов".Кто-нибудь знает, что я делаю не так?