如何选择last_insert_id?

Posted

技术标签:

【中文标题】如何选择last_insert_id?【英文标题】:How to select last_insert_id? 【发布时间】:2016-03-16 11:13:30 【问题描述】:

我有一个返回多个值的 SQL 语句:

在我的代码中,我需要调用最后插入的 ID。我看过一些关于SELECT LAST_INSERT_ID() 的例子,但它们似乎都是针对插入语句的。我只想显示最后插入的 id。

所以从下图中我只需要选择 ID 13。

【问题讨论】:

【参考方案1】:

使用ORDER BYLIMIT

查询

SELECT dl.* FROM driver_log dl
WHERE dl.Company_ID = 76 AND dl.Manifesr=tNo = 8199
ORDER BY ID DESC LIMIT 1;

如果你只想选择ID,那么使用MAX函数。

SELECT MAX(dl.ID) as ID 
FROM driver_log dl
WHERE dl.Company_ID = 76 AND dl.Manifesr=tNo = 8199;

【讨论】:

【参考方案2】:

您可以尝试使用 MAX 函数,如

SELECT max(id) FROM driver_log dl
WHERE dl.Company_ID = 76 AND dl.Manifesr=tNo = 8199

【讨论】:

【参考方案3】:

简单的方法是通过查询选择最后一行数据。

SELECT * FROM YourTableName order by ID desc limit 1

【讨论】:

以上是关于如何选择last_insert_id?的主要内容,如果未能解决你的问题,请参考以下文章

使用从 php 中选择 last_insert_id() 不起作用

SELECT LAST_INSERT_ID() *更新

如何在 WebMatrix 中使用 LAST_INSERT_ID()

Last_insert_id 的效率如何?

如何从事务中的特定查询中检索 last_insert_id?

如何最有效地获取多个 last_insert_id