从列表中列出一个类别

时间:2013-12-07 14:52:30

标签: php mysql

我想从表格中列出一个类别,我该怎么做?

Table name: products
product_id desc name price qty 

Table name: category
cat_id cat_name

我希望它看起来像这样

Category 1 (shirts)
Name   Desc Price Qty

我有这个但是我收到了错误..不确定它是否正确的方法

SELECT products.*, category.cat_name
FROM prodcuts 
LEFT JOIN category ON products.cat_id = prodcuts.cat_id
WHERE category.cat_name = "shirts"

2 个答案:

答案 0 :(得分:1)

您的ON语句中有错误(您必须从每个表中添加一列才能加入它们)并且产品拼写错误(产品):

试试这个:

SELECT products.*, category.cat_name
FROM products 
LEFT JOIN category ON products.cat_id = category.cat_id
WHERE category.cat_name = "shirts"

编辑:

另一件事是你说你的产品表是:

Table name: products
product_id desc name price qty 

这没有提及cat_id。你真的必须把它放在产品表中(如果写这个问题不是错误的话)

答案 1 :(得分:0)

您在联接中错过了类别表列名称。

SELECT products.*, category.cat_name
FROM prodcuts 
 LEFT JOIN category ON products.cat_id = prodcuts.cat_id
WHERE category.cat_name = "shirts"

应该是

SELECT products.*, category.cat_name
FROM products 
LEFT JOIN category ON products.cat_id = category.cat_id
WHERE category.cat_name = "shirts"