【发布时间】:2010-12-13 17:44:54
【问题描述】:
我有一个经常插入新数据的表。我需要获取表的最后一个 ID。我该怎么做?
和SELECT MAX(id) FROM table类似吗?
【问题讨论】:
-
是的,你这个查询将返回表的最后一个 id。但一个条件是 ID 必须是主键。这样你就可以避免悔改。
-
@sathish:该方法的主要问题是并发。
-
详细说明:问题在于,如果其他人在您的
INSERT和查询MAX(id)之间的表中插入某些内容,您可能会得到一个不是 your 的 id i> 最后一个 ID。 -
@Jocelyn 这个问题是在 年之后提出的,但浏览量比这个问题少了数千。
-
@Neal,你是对的。另一个问题应该作为这个问题的副本关闭。