为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 MySQL 中获取下一条/上一条双记录?

如何在 MySQL 中获取下一条/上一条双记录?

PHP
猛跑小猪 2023-06-18 17:23:39
大家好,我寻求帮助以了解如何继续使用 sql 代码我有一个表设置为照片在 kiss_count 单元格中重复记录,见照片。例如,如何从 6 开始检索记录?我试图做这样的事情,但它不尊重列表,跳过 kiss_count 6 并直接转到 2,问题是有像 6 6 或 11 这样的重复项,我该如何继续?我可以依靠 id 列表来尊重正确的 irdine 中的调用,yso 的代码是这样的:WHERE kiss_count < '6'  ORDER BY kiss_count_total DESC LIMIT 5");问题是我可以订购重复的清单吗?我也试过这个WHERE kiss_count < '6' AND ID < '8'  ORDER BY kiss_count_total DESC LIMIT 5");但它不起作用
查看完整描述

2 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

所以你想订购kiss_count有重复的字段。为此,您需要使用一个额外的字段。阅读标题,您还希望能够获得接下来的 5 个值。


您可以使用order byon 2 列,不需要子句where:


select * from my_table order by kiss_count desc, id asc;

因为查询select * from my_table order by kiss_count desc, id asc总是给你相同的序列,你可以使用 grap 结果offset。


因此,在您的示例中,第二页的 an 应offset为 5,arow_count应为 5:


// page 2

select * from my_table order by kiss_count desc, id asc limit 5, 5;

// page 3

select * from my_table order by kiss_count desc, id asc limit 10, 5;


查看完整回答
反对 回复 2023-06-18
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

它正在跳过 6,因为它正在搜索kiss_count < 6. 你应该检查kiss_count <= 6

WHERE kiss_count <= '6'  ORDER BY kiss_count_total DESC LIMIT 5");


查看完整回答
反对 回复 2023-06-18
  • 2 回答
  • 0 关注
  • 131 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信