我有一个表 1 产品(产品 ID、名称、描述、productCategoryID)和表 2 类别(类别 ID、名称)的经典示例,我想要的只是使用 select 语句来获取产品表输出,但使用产品类别名称代替结果集中的ID,我知道这一定很简单,但我用谷歌搜索并查看了所有类似的问题,但不明白在我的情况下加入是如何工作的,谢谢
问问题
133 次
2 回答
1
您想JOIN
在两个表之间使用 a :
select p.productId
p.name as ProductName,
p.description,
c.name CategoryName
from products p
inner join categories c
on p.productCategoryId = c.categoryId
如果您在学习联接方面需要帮助,这里是联接的一个很好的可视化解释。
我INNER JOIN
在两张桌子之间使用了一个。这将返回两个表之间匹配的所有行。如果products
无论表中是否有匹配的行都想返回所有category
,那么您将需要使用LEFT JOIN
于 2013-01-27T20:51:11.040 回答
1
理想情况下,我们会看到一些您自己的代码......但是......
SELECT products.productID,
products.name as ProductName,
products.description,
categories.name as CategoryName
FROM Products
INNER JOIN categories
ON categories.categoryID = Products.productCategoryID
于 2013-01-27T20:51:35.190 回答