Я пытаюсь добавить столбец «цена» в таблицу order_details. Я хочу, чтобы он вычислил цену из разных цен на продукты из других таблиц.Добавление вычисленного столбца в mysql
alter table order_detail add column Price decimal(5,2) as
(CASE (order_detail.item_id,
item.item_id,
bagel.item_id,
bagelfilling.item_id,
Item.price,
bagelfilling.price,
order_detail.quantity,
order_detail.discount,
drink_sizes.price,
drink.item_id)
WHEN (order_detail.item_id = item.item_id) AND (item.item_ID = bagel.item_id) AND (bagel.item_id = bagelfilling.item_id)
THEN ((Item.price + bagelfilling.price)*order_detail.quantity)-order_detail.discount
WHEN (order_detail.item_id = item.item_id) AND (item.item_ID = drink.item_id)
THEN ((Item.price + drink_sizes.price)*order_detail.quantity)-order_detail.discount
WHEN (order_detail.item_id = item.item_id) AND (item.item_ID = bagel.item_id)
THEN (Item.price*order_detail.quantity)-order_detail.discount
WHEN (order_detail.item_id = item.item_id) AND (item.item_ID = drink.item_id)
THEN (Item.price*order_detail.quantity)-order_detail.discount
else 0.00
end)
я продолжать работать в эту ошибку:
Error Code: 1241. Operand should contain 1 column(s).
Как исправить эту проблему? Мне нужно, чтобы цена была рассчитана либо при создании таблицы, либо при добавлении данных.
Я вижу. как бы вы сделали процедуру для этого, тогда – Tochi
1. Это другой вопрос, так что спросите его в своем посте. 2. Предоставьте более подробную информацию о том, чего вы пытаетесь достичь, и о том, как вы пытались решить эту проблему в новой должности. Потому что, основываясь только на этом, я не могу ответить на ваш новый вопрос, даже если бы захотел. – Shadow