我需要修改MySQL代码以传递此错误并获得相同的结果。
我将localhost与Xampp一起使用。
CREATE VIEW product_variation_stock_view AS
SELECT
product_variations.product_id AS product_id,
product_variations.id AS product_variation_id,
COALESCE(SUM(stocks.quantity) - COALESCE(SUM(product_variation_order.quantity), 0), 0) AS stock,
CASE WHEN COALESCE(SUM(stocks.quantity) - COALESCE(SUM(product_variation_order.quantity), 0), 0) > 0
THEN true
ELSE false
END in_stock
FROM product_variations
LEFT JOIN(
SELECT stocks.product_variation_id AS id,
SUM(stocks.quantity) AS quantity
FROM stocks
GROUP BY stocks.product_variation_id
) AS stocks USING (id)
LEFT JOIN (
SELECT
product_variation_order.product_variation_id AS id,
SUM(product_variation_order.quantity) AS quantity
FROM product_variation_order
GROUP BY product_variation_order.product_variation_id
) AS product_variation_order USING (id)
GROUP BY product_variations.id
MySQL说:
#1349-视图的SELECT在FROM子句中包含一个子查询
答案 0 :(得分:0)
升级到mysql-8,我的问题已解决。
要升级XAMPP中包含的MySql(我在Windows系统上做到了):
- 将Mysql目录重命名为其他名称。
- 从MariaDB链接https://downloads.mariadb.org/下载.msi文件。
- 运行.msi。将安装目录更改为XAMPP下的Mysql位置。
- 完成后,将旧的my.ini文件从原始mysql / bin目录复制到新的mysql / bin目录。
- 您应该能够从XAMPP控制面板启动Mysql。
我在这里找到了解决方案 http://www.mynotebucket.com/update-mysql-under-xmpp/
答案 1 :(得分:0)
您需要升级您的 MySQL。如果由于任何原因您无法这样做,您可以为子查询创建视图并将它们集成到您的查询中。