首页 > 解决方案 > 同一个自动递增 id 的多个值,不是多对多

问题描述

我创建了带有列的表 INGREDIENTS_LISTS:INGREDIENTS_LIST_ID、INGGREDIENT_ID。第一列是自动递增的,我很想保持这种方式,但有一个问题。我不能将多种成分添加到一个成分列表中,这使它变得毫无意义。目前它看起来像这样:

INGREDIENTS_LIST_ID | INREDIENT_ID
         1          | 3
         2          | 5
         3          | 1

在创建表时是否有任何 INSERT 变体“技巧”可以用来实现此输出:

INGREDIENTS_LIST_ID | INREDIENT_ID
         1          | 3
         1          | 5
         2          | 1

我只能看到选项:

a) 放弃自动增量,但每次插入时我都必须检查当前最大的 INGREDIENTS_LIST_ID b) 在 INGREDIENTS_LISTS 中创建另一列让我们说 ID,但感觉它正在解决问题但没有解决它

提前致谢!

PS。这个案例显然是关于 SQL 的。MYSQL 更准确。

编辑。也许我还应该注意到,我还有其他表,例如具有唯一 ID 和 INGREDIENTS_LIST_IS 的 RECIPES 表,因此它不是多对多关系。一份 RECIPE 只能有一个 INGREDIENTS_LIST,而 INGREDIENTS_LIST 应该有多个 INGREDIENTS

标签: mysqlsqlinsertauto-increment

解决方案


推荐阅读