gpt4 book ai didi

mysql - 在 LEFT 表上使用过滤器时如何进行 LEFT JOIN?

转载 作者:行者123 更新时间:2023-11-29 01:32:10 26 4
gpt4 key购买 nike

我有 2 个表,我想 LEFT JOIN 并过滤 LEFT 表上的结果。这些表是: -product_table,包含列 id 和 product_name -order_table,包含列 id、product_id、product_order

我尝试从 product 表中选择 id 为 1 的行,然后 LEFT JOIN order 表,其中 product id 与 product 表中的 id 相同。

我的第一次尝试是这样的:

SELECT * FROM product_table 
WHERE product_table.id = 1
LEFT JOIN order_table
ON order_table.product_id=product_table.id

对于这个查询,我遇到了一个语法错误。

所以我搜索了如何进行 LEFT JOIN 并从 LEFT 表中过滤结果,我发现在查询中使用 AND after LEFT JOIN,如下所示:

SELECT * FROM product_table
LEFT JOIN order_table
ON order_table.product_id=product_table.id
AND product_table.id=1

但是这里查询返回了所有product_table行和所有对应的order_table行,全部连接,但我想要的只是id等于1的product_table行,并与相应的order_table行连接。我该怎么做?

最佳答案

试试这个:

SELECT * 
FROM product_table pt
LEFT JOIN order_table ot
ON ot.product_id=pt.id
WHERE pt.id = 1

关于mysql - 在 LEFT 表上使用过滤器时如何进行 LEFT JOIN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8654393/

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