gpt4 book ai didi

mysql - 在 SQL 中,可以在 INSERT 语句的 VALUES 子句中嵌套 SELECT 语句吗?

转载 作者:行者123 更新时间:2023-11-30 23:57:46 27 4
gpt4 key购买 nike

在 SQL 中,是否可以在 INSERT 语句的 VALUES 子句中嵌套 SELECT 语句?我正在使用 MySQL,并希望在创建新记录时查询表中某个字段的最大值加一,如下所示。

INSERT into attornies (
LawOfficeId, LawOfficeName
) VALUES (
(select max(LawOfficeID)+1 from attornies),
'Wee, Sue Em and Howe'
);

我不确定是不是我的语法不好,我想做的事情是不可能的,等等。当然,如果我把它作为两个单独的语句来尝试,它会起作用,但我想把它变成一个语句。我知道一个建议是使用自动递增,但我不想这样做。

如果这个问题已经得到解答,请指出我的方向。如果不是....帮助。

最佳答案

是的,你可以做到

INSERT into attornies (
LawOfficeId, LawOfficeName
)
select max(LawOfficeID) + 1,'Wee, Sue Em and Howe' from attornies;

但是,不推荐使用自动递增,因为如果多个线程正在执行插入操作,您可能会遇到重复的主键情况

关于mysql - 在 SQL 中,可以在 INSERT 语句的 VALUES 子句中嵌套 SELECT 语句吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51865835/

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