gpt4 book ai didi

MySQL JOIN 两次查找

转载 作者:行者123 更新时间:2023-11-29 05:13:41 32 4
gpt4 key购买 nike

我有两个表

产品

id
code
description
category
subcategory

产品类别

id
category_name
category_master

产品表中的数据

1, UK001, Description Text, 1, 2

product_category 表中的数据

1, Network Cable,  0
2, CAT6, 1

我想查找产品并返回类别和子类别,我已经找到了执行此操作的最佳方法,但我无法理解它,我已经成功地使用以下方法返回了一个查找。

SELECT products.product_code, products.description, product_category.category_name, product_category.category_name
FROM products
LEFT JOIN product_category ON product_category.id = products.category AND product_category.ID = products.subcategory
ORDER BY description ASC

按预期返回

UK001, Description Text, Network Cables

我也想返回子类别,添加另一个连接不起作用,这就是我卡住的地方,

最佳答案

你只需要两个join:

SELECT p.product_code, p.description, pc.category_name, pcs.category_name
FROM products p LEFT JOIN
product_category pc
ON pc.id = p.category LEFT JOIN
product_category pcs
ON pcs.ID = p.subcategory
ORDER BY description ASC;

还要注意表别名的使用。这些使查询更易于编写和阅读。

关于MySQL JOIN 两次查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36068146/

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