我对SQL很陌生,我目前正在尝试在PHP和MySql中创建一个简单的产品页面。现在我有一个products
表,其中包含我的产品id
,name
,price
和stock
。
编辑:示例products
表格:
|----------------------------------------------------------------|
| id | name | price | stock |
|----------------------------------------------------------------|
| 1 | Guess T-Shirt | 10 | 100 |
|----------------------------------------------------------------|
我想要做的就是为产品设置不同的类别,这样每个产品都可以分为多个类别。
以下是每种产品的选项:
现在如您所见,每个子类别都有不同的类别。
首先想到的是,我想从我的id
表中获得一个包含所有这些类别的表作为行和products
的外键。我意识到这不是最好的方法,但我也不知道什么是正确的方法。
如果您需要更多详细信息,请发表评论,我将更新此信息。 感谢
答案 0 :(得分:6)
您需要一个包含此字段的product
表
primary key
然后是菜单左侧的表格category
primary key
和数据透视表product_category
最后您的查询将是
SELECT p.*
FROM products p
INNER JOIN product_category pc
ON p.product_id = pc.product_id
WHERE
p.Visibility = @visibilty
AND p.Stock = @Stock
AND p.Discount = @Discount
AND p.Remarks = @Remarks
AND pc.Category_id in (@category);