获取最后一个 id PDO
Posted
技术标签:
【中文标题】获取最后一个 id PDO【英文标题】:Getting last id PDO 【发布时间】:2016-09-09 06:12:23 【问题描述】:这就是我所拥有的:
$stmt = $handler->prepare('SELECT id FROM users');
$stmt->execute();
$id = $handler->lastInsertId();
echo $id;
所以,我希望结果是例如“有 $id 注册用户”。
【问题讨论】:
lastInertId
在成功插入操作后可用。你想SELECT MAX(id)
Row count with PDO的可能重复
【参考方案1】:
您永远不需要从表格中选择“最后一个 id”。每当你认为你需要它时,你就需要别的东西。例如,“Last id”与注册用户数无关。相反,您必须计算个用户:
$count = $handler->query('SELECT count(id) FROM users')->fetchColumn();
echo "There is $count registered users";
【讨论】:
SELECT id FROM users ORDER BY id DESC LIMIT 1
这也有效,但可能不是正确的,谢谢。【参考方案2】:
PDO::lastInsertId
-- 返回最后一个插入行或序列值的 ID。 ——https://secure.php.net/manual/en/pdo.lastinsertid.php。
您想要的是 count 个注册用户,请参阅 Row count with PDO。
要检索最后插入的 ID 或序列值,请参阅PDO get the last ID inserted。
【讨论】:
他不需要results的计数。仅仅因为他没有它们。 如果您选择了一些数据,得到了一些结果,然后想计算它们,则可以使用“结果”一词。虽然 OP 没有任何查询结果。他唯一的结果就是计数本身,显然没有必要计数。以上是关于获取最后一个 id PDO的主要内容,如果未能解决你的问题,请参考以下文章
如何在使用 PHP-PDO 记录查询时获取最后一个插入 ID