如何在mysql中“ident_current”?

时间:2013-01-14 00:12:22

标签: mysql

我在MSSQL中使用此代码:

SELECT IDENT_CURRENT('customers');

当我在MySQL中尝试它时,它不起作用。我在网上寻找答案,但我找不到任何对我有用的东西。什么是上述TSQL的MySQL等价物?

5 个答案:

答案 0 :(得分:4)

我认为你正在寻找这个:

SELECT LAST_INSERT_ID('customers');

LAST_INSERT_ID()并非在所有情况下都是真的,所以最好使用:

SELECT MAX('id') FROM customers;

答案 1 :(得分:3)

在MySQL中,您可以使用LAST_INSERT_ID(expr)

答案 2 :(得分:0)

我不知道你是否还需要它,但它可能对某人有帮助。 :)

我遇到了同样的问题,需要从我的表中获取下一个id(auto_increment number)而不必添加新行而不使用MAX()或LAST_INSERT_ID()因为它只会返回最后一个可见记录不是真正的下一个auto_increment。

我找到的解决方案是从table_schema获取auto_increment,如下所示:

SELECT  AUTO_INCREMENT
FROM    information_schema.TABLES
WHERE   (TABLE_NAME = 'your_table')

希望它可以帮助某人,就像它帮助了我一样。 *对不起英语不好,我来自巴西。

答案 3 :(得分:0)

SELECT LAST_INSERT_ID();

要详细了解此功能:http://dev.mysql.com/doc/refman/5.6/en/information-functions.html#function_last-insert-id

为了使其按预期工作,“ID”列必须设置为“UNIQUE”。

答案 4 :(得分:-1)

如果您使用某种身份(递增ID)列,则以下内容应该有效;

Select top 1 ID from TBLNAME
order by ID DESC