首页 > 解决方案 > 获取从开始到结束编号​​之间的记录

问题描述

posts_main此 SQL 从 2 个表“ ”和“ ”返回所有记录作为 (JSON),posts_comments这取决于特定用户

$sql = "select posts_main.*,
(select groupid from posts_comments where groupid = posts_main.id group by groupid ) as count_comments
from posts_main
WHERE posts_main.user_id = '$user_id' ";


$obj = json_decode($_GET["x"], false);
$stmt = $con->prepare($sql);
$stmt->bind_param("ss", $obj->table, $obj->limit);
$stmt->execute();
$result = $stmt->get_result();
$outp = $result->fetch_all(MYSQLI_ASSOC);

echo json_encode($outp);

我的问题:我 怎样才能得到前 10 条记录,然后是接下来的 10 条记录,直到最后?

例如: 我会发送“start”=0,我会得到前 10 条记录。下次我会发送:“start” = 10,然后我会得到1020 的记录。依此类推。

谢谢...

标签: phpmysqljsonrecordbetween

解决方案


如果你有一个“开始”号码,你可以像这样构建你的查询 -

$sql = "select posts_main.*,
(select groupid from posts_comments where groupid = posts_main.id group by groupid ) as count_comments
from posts_main
WHERE posts_main.user_id = '$user_id' limit 10,10";

MySQL 从表中的第 11 条记录开始读取 10 条记录。如果您正在寻找 Prev, Next 解决方案,那么 PHP 分页是唯一的选择。


推荐阅读