在 MySQL 中使用特定 ID 值和 Order By 進行排序
使用「order by」依照一組預先定義的 ID值實現排序在MySQL中,使用FIELD函數如下:
SELECT * FROM table ORDER BY FIELD(ID,1,5,4,3)
其中「table」代表目標
了解FIELD 函數
FIELD 函數傳回指定值在給定值清單中的位置。在此範例中,「ID」列的值與提供的 ID 值清單(1、5、4 和 3)進行比較。結果是清單中匹配 ID 值的索引,並且記錄根據這些索引進行排序。
應用程式
使用此方法,您可以確保根據提供的 ID 值以特定順序擷取記錄。當您需要不基於 ID 列的實際值的預定排序順序時,這特別有用。
解決分頁問題的替代方法
原始問題也引起了對分頁的擔憂,即當使用者瀏覽多個頁面時排序會發生變化。若要解決此問題,請考慮在表中新增時間戳記或序號列。存取時,將目前時間戳記或序號儲存在會話變數中。檢索後續頁面時,使用此時間戳或序號而不是 ID 列進行排序。這樣,使用者將檢索相同的排序結果,直到產生新的時間戳記或序號。
以上是如何使用 ORDER BY 依照 ID 的特定順序對 MySQL 結果進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!