gpt4 book ai didi

mysql - 如何从所有表中获取最高的非递增id值

转载 作者:行者123 更新时间:2023-11-29 19:53:15 26 4
gpt4 key购买 nike

所以我有一个包含任意数量的表的数据库,这些表都有一个整数的 id 列,但它自动递增。相反,整数始终由我的实体管理器设置。

每次我的应用程序启动时,我都会询问数据库“嘿,您所有表中的最高 id 值是多少?”。这样从那一刻起我就可以在我的实体中自己自动递增它。

我尝试了这个:SELECT MAX(id) FROM (SHOW TABLES),但这当然不起作用。我想使用一个查询,不必在查询中指定我到底有哪些表,因为我不想每次添加表时都必须更改查询。

有人可以帮我吗?

最佳答案

您正在寻找一个序列,为您提供唯一的 ID,无论您是否实际使用它们。 MySQL 并不直接提供此功能,但对于具有自动递增 ID 的表,它会提供此功能(对于每条新记录,它都会创建一个新 ID)。

因此,您可能可以创建一个虚拟表只是为了创建 ID:

create table ids (id bigint not null auto_increment, primary key(id));

添加一条记录

insert into ids values();

并询问新的 ID

select last_insert_id();

一起工作。

关于mysql - 如何从所有表中获取最高的非递增id值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40762293/

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