如何使用PDO从最后一个ID中选择先前的ID

问题描述

我想从上一个ID中选择上一个ID。我该怎么做? 数据库MysqL

示例:

id name
1   asd
2   adas
3   ads
4   dsf -> I want to choose this 
5   rew

id name  ---------------------------------------|
1   asd                                         |
2   adas                                        |
3   ads                                         |
4   dsf                                         |
5   rew -> I want to choose this if I add any "name"
6   zxc

到目前为止,我已经尝试过以下代码

$sql = $db->prepare("SELECT * FROM answerController ORDER BY id DESC LIMIT 2");
$sql->execute();
$data = $sql->fetch();

解决方法

您需要为offset提供limit

SELECT * FROM answerController ORDER BY id DESC LIMIT 1,2

https://dev.mysql.com/doc/refman/8.0/en/select.html

第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。第一行的偏移量是0(不是1)

所以应该是:

$sql = $db->prepare("SELECT name FROM answerController ORDER BY id DESC LIMIT 1,2");
$sql->execute();
$data = $sql->fetch(PDO::FETCH_ASSOC);
echo $data['name'];