簡體   English   中英

如何在 MySQL 中獲得下一個/上一個雙記錄?

[英]How to get next/previous double records in MySQL?

大家好,我尋求幫助以了解如何使用 sql 代碼我有一張照片中的表格

在此處輸入圖像描述

在kiss_count 單元格中重復記錄,見照片。 例如,如何從 6 開始檢索記錄? 我試圖做這樣的事情,但它不尊重列表,直接跳過kiss_count 6和go到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");

但它不起作用

它正在跳過 6 ,因為它正在搜索kiss_count < 6 你應該檢查kiss_count <= 6

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

所以你想訂購有重復的kiss_count字段。 為此,您需要使用額外的字段。 閱讀標題,您還希望能夠獲得接下來的 5 個值。

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

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

因為查詢select * from my_table order by kiss_count desc, id asc總是給你相同的序列,你可以使用offset來獲取結果。

因此,在您的示例中,第二頁的offset應為 5, row_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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM