Mysql-外键和数组

时间:2015-06-06 19:35:30

标签: mysql

我有两张桌子。一个是Category,另一个是Products。问题是一个产品可能有多个类别,我不知道该怎么做。

我将这些表与外键1:n。

相关联

由于

2 个答案:

答案 0 :(得分:2)

您需要另一张桌子,可能称为ProductCategories。 每行包含产品的外键和类别的外键。 如果要查找产品的类别,请查询具有该产品ID的所有ProductCategories。

答案 1 :(得分:0)

您应该创建3个表并将它们相关联,如下所示:

Table: Items
Columns: ID, Item_ID, Item_Title, Content

Table: Tags
Columns: Tag_ID, Tag_Title

Table: Items_Tags
Columns: Item_ID, Tag_ID
  • Item_ID是Items表中的外键。

  • Items_Tags是一个关联表。

例如,此代码打印所有x标签:

SELECT * FROM items i 
LEFT JOIN item_tags it ON i.item_id = it.item_id
LEFT JOIN tags t ON t.tag_id = it.tag_id
WHERE tag_title = 'x'