gpt4 book ai didi

MySQL:生成自动键但对多行使用相同的自动键

转载 作者:行者123 更新时间:2023-11-29 09:01:27 26 4
gpt4 key购买 nike

我有一个 mysql 表,用于存储从 ID 到一组值的映射:

CREATE TABLE `mapping` (
`ID` bigint(20) unsigned NOT NULL,
`Value` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

该表是一个值列表,行的 ID 选择该值所属的集合。因此,列 ID 每组唯一,但每行不唯一。

我使用以下语句将数据插入表中:

INSERT INTO `mapping`
SELECT 5, `value` FROM `set1`;

在此示例中,我手动计算并设置 ID 为 5。如果mysql能自动设置这个ID就好了。我知道自动键功能,但使用它不起作用,因为使用相同插入语句插入的所有行都应该具有相同的 ID。

因此每个插入语句都应该生成一个新的 ID,然后将其用于所有插入的行。有办法实现吗?

最佳答案

我不相信它(我不确定 locking table 是否是个好主意,我认为不是),但这可能会有所帮助:

lock tables `mapping` as m write, m as m1 read;

insert into m
select (select max(id) + 1 from m1), `value` from `set1`;

ulock tables;

关于MySQL:生成自动键但对多行使用相同的自动键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8475213/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com