在MySQL 中使用自訂順序對資料進行排序
在MySQL 中,可以使用FIELD() 函數定義自訂排序順序。此函數根據值列表評估欄位的值,並根據該值在列表中的位置傳回一個數值。透過利用此函數,您可以為特定值指定所需的順序。
請考慮下表:
ID Language Text 0 ENU a 0 JPN b 0 DAN c 1 ENU d 1 JPN e 1 DAN f
返回按語言和升序ID 排序的行,其中ENU 為首先優先,其次是JPN,然後是DAN,可以使用以下ORDER BY 子句:
ORDER BY FIELD(Language,'ENU','JPN','DAN'), ID
此查詢指示MySQL依語言欄位對結果進行排序,使用值「ENU」、「JPN」和「DAN」作為自訂排序順序。 「語言」欄位中值為「ENU」的行將會先出現,然後是「JPN」的行,最後是「DAN」的行。在每個語言組中,行將按 ID 升序排序。
需要注意的是:
以上是如何使用 FIELD() 在 MySQL 中定義自訂排序順序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!