如何通过PDO查询实现按ID降序获取数据库数据?
当然可行!不过得先调整下你的查询逻辑~
看你当前的代码是根据指定的:id查询单条数据,这和“从最后一个ID开始展示信息”的需求不太匹配——我猜你是想按ID从大到小的顺序获取数据,也就是从ID最大的那条记录开始往下展示?如果是这样的话,只需要修改SQL语句,加上排序规则就可以了:
修改后的PDO代码示例
// 按ID倒序查询所有数据,最大的ID会排在结果最前面 $query = $db->prepare("SELECT * FROM grafica ORDER BY ID DESC"); $query->execute(); $result = $query->fetchAll(); // 遍历结果时,就从最后一个(最大的)ID开始展示了 foreach ($result as $row) { // 这里写你的数据展示逻辑,比如输出字段内容 echo "ID: {$row['ID']} - 相关内容: {$row['你的字段名称']} <br>"; }
关键说明
ORDER BY ID DESC是核心:这条指令会让数据库把ID最大的记录放在结果集的第一位,遍历的时候自然就从“最后一个ID”开始了。- 如果只需要展示最近的N条数据(比如最近10条),可以加
LIMIT限制数量:SELECT * FROM grafica ORDER BY ID DESC LIMIT 10
如果你的需求是“从某个特定的最后ID开始,往后展示更早的记录”(比如分页场景),那可以先获取最大的ID,再结合WHERE ID <= :max_id和ORDER BY ID DESC来实现,但一般直接用上面的倒序查询就能满足“从最后一个ID开始展示”的需求啦。
内容的提问来源于stack exchange,提问作者user3430043
相关产品推荐
相关产品推荐

