gpt4 book ai didi

mysql - 结果上的多个内部联接

转载 作者:行者123 更新时间:2023-11-29 13:39:12 25 4
gpt4 key购买 nike

我有 4 张 table :-系统用户-引号-quote_items-新产品

哪里

system_users.id = quotes.created_by
quotes.id = quote_items.quote_id
new_products.id = quote_items.new_product_id

我正在尝试查找特定商店 (system_users.store_id) 的总报价(价格)到目前为止我有这个不起作用:

SELECT ROUND(SUM( s.price),2)
FROM quotes
INNER JOIN system_users
ON quotes.created_by = system_users.id
INNER JOIN quote_items p
ON p.id = quote_id Where system_users.store_id = 14
INNER JOIN new_products s
ON s.id = new_product_id
Where system_users.store_id = 1

查询肯定在第二个 INNER JOIN 处失败,我不明白为什么。第一次加入应该获取特定商店中所有用户的所有报价。第二个连接应该从上面的结果中获取带有 quote_ids 的所有 quote_items 。第三次连接应该从新结果中获取产品并对价格求和。

最佳答案

不能在查询中使用两次 WHERE 子句

SELECT ROUND(SUM( s.price),2)
FROM quotes
INNER JOIN system_users
ON quotes.created_by = system_users.id
INNER JOIN quote_items p
ON p.id = quote_id AND system_users.store_id = 14
INNER JOIN new_products s
ON s.id = new_product_id
Where system_users.store_id = 1

您可以在 ON 子句中使用 AND 来连接多个条件

关于mysql - 结果上的多个内部联接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18333802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com