我知道标题有点令人困惑,但我不知道如何更好地命名它。 我有这样的表:
产品:
product_id | product_name | product_category1 | product_category2
类别
category_id | category_name
我想选择如下所示的记录:
product_id | product_name | category_name | subcategory_name (where category is category1 and subcategory is category2)
所以我需要的是加入两列,其中每列都是“category_name”列,但 category_name
必须将 id 保存在 product_category1
和 subcategory_name
必须将 id 保存在 product_category2
我尝试了很多东西,但我真的被困住了。我什至无法粘贴我的概念,因为目前我没有。
最佳答案
您只需将产品和类别连接两次,并在两次连接中为 categories
表使用不同的别名。像这样的东西:
SELECT prd.product_id, prd.product_name,cat.category_name,subcat.category_name
FROM products AS prd
JOIN categories AS cat ON cat.category_id = prd.product_category1
JOIN categories AS subcat ON subcat.category_id = prd.product_category2
关于mysql连接两个相同的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16913594/