Мне кажется, что это действительно простое исправление, но я не могу понять это. Вот вопрос, над которым я работаю:Неизвестное имя столбца в списке полей - MySQL
- Создайте представление с именем order_item_products, которое возвращает столбцы из таблиц Orders, Order_Items и Products. Это представление должно возвращать эти столбцы из таблицы Orders: order_id, order_date, tax_amount и ship_date. Это представление должно возвращать эти столбцы из таблицы Order_Items: item_price, discount_amount, final_price (сумма скидки, вычитаемая из цены товара), количество и item_total (расчетная сумма для элемента). Этот вид должен вернуть колонку корпуса PRODUCT_NAME из таблицы Products
И вот мой код:
CREATE VIEW order_item_products AS
SELECT o.order_id, o.order_date, o.tax_amount, o.ship_date,
oi.item_price, oi.discount_amount, oi.quantity,
(oi.item_price - oi.discount_amount) AS actual_price,
(actual_price * oi.quantity) AS final_price,
p.product_name
FROM orders o
JOIN order_items oi on o.order_id = oi.order_id
JOIN products p ON p.product_id = oi.product_ID;
Я получаю сообщение об ошибке Неизвестный столбец «actual_price» в списке полей. Что я делаю не так? Он не рассчитает окончательную цену. Я удалил итоговый оператор цены и выполнил мой запрос, чтобы он стал столбцом.
Любая помощь приветствуется.
вы не можете использовать псевдоним в то же время, вы определяете его. поэтому '(actual_price * oi_quantity)' должно быть '((oi.item_price - oi.discount_amount) * oi.quantity)' –
Спасибо! Я знал, что это просто. – Itsonlyme