0

我需要一些关于如何设置我的表的建议我目前有一个产品表和一个产品代码表。

在代码表中,我有一个 id 和一个标题,例如:

1 567902
2 345789
3 345678

此表中可以有很多项。

在我的产品表中,我有通常的产品 ID、标题等,还有一个代码 ID 列,我目前正在为产品需要引用的任何代码存储一个逗号分隔的 ID 列表。

在该列中,我最终可能会得到如下 id:2,5,6,9

我将需要能够搜索产品表以查找特定集合的代码 id 这是我在尝试使用 id IN ($var) 或 FIND_IN_SET 时遇到问题的地方,我被告知有问题重组它我很高兴只是想知道最好的方法是什么。

4

1 回答 1

0

听起来你有两个选择。如果这是一对多的关系,那么您需要在表中拥有外键code,而不是在product表中。

IE

codeId code   productId
1      567902 2
2      345789 6
3      345678 9
4      345690 9

另一种选择是拥有另一个包含 productId 和 codeId (都作为外键)的表,这是一个多对多的关系。如果可以将代码分配给多个产品(我假设不是),这就是您应该采取的措施。它看起来像这样:

codeId productId
1      2
1      10
2      6
3      9
4      9

我认为第一个选项是您需要的。

于 2012-06-26T23:17:35.597 回答