这是我的表格:
PRODUCT_ID (pk) | GROUP_ID (pk) | PRICE
这样,我就会为不同用户的产品设置不同的价格。如果价格适用于每个组,则 GROUP_ID 将为 NULL。但这是一个 PK - 它不能为 NULL。 PRODUCT_ID不能单独PK,因为可能会有更多不同价格的产品。那么如何躲避呢?
最佳答案
正如您所说,表的主键不可能为 NULL。我建议您使用一些“特殊”值(很像 NULL,只是其他有效的值),这表明所述价格适用于所有组(例如 ~0
如果您使用 INT UNSIGNED
作为 GROUP_ID
的类型)。
关于php - 有趣的 SQL 结构 : part of primary key could be NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11882769/