gpt4 book ai didi

mysql - 如何使用 WHERE 子句连接表并显示不存在的行

转载 作者:行者123 更新时间:2023-11-29 07:22:07 27 4
gpt4 key购买 nike

标题可能听起来有点令人困惑,但让我解释一下:
我有三张 table :
商店

storeID | name
1 | store1
2 | store2
3 | store3

产品

productID | name
1 | ball
2 | cup

商店产品

storeID_fk | productID_fk
2 | 1
1 | 2
3 | 2

我想要存档的是如下结果:

storeID | name  | storeID_fk | productID_fk
1 | store1| NULL | NULL
2 | store2| 2 | 1
3 | store3| NULL | NULL

到目前为止我已经尝试过:

SELECT * FROM `store` 
LEFT JOIN `store_product` on storeID = storeID_fk
WHERE productID_fk = 1;

但这只会返回:

storeID | name  | storeID_fk | productID_fk
2 | store2| 2 | 1

如何显示空/不存在的行?

最佳答案

执行左连接时,将右侧表的条件放入ON子句中以获得真正的左连接行为。 (当在 WHERE 中时,您会得到常规的内部联接 结果。)

SELECT * FROM `store` 
LEFT JOIN `store_product` on storeID = storeID_fk
AND productID_fk = 1

关于mysql - 如何使用 WHERE 子句连接表并显示不存在的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35770557/

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