MySQL結果排序及優先權設定
本文介紹如何在MySQL結果排序中優先處理特定行。
方法一:完整排序
如果需要根據欄位中所有可能的值進行排序,無論其順序為何:
1 2 3 | <code class = "language-sql" >SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core" , "board" , "other" )</code>
|
登入後複製
方法二:優先處理“core”,其他值順序無關
如果需要優先處理“core”,而忽略其他值的順序:
1 2 3 | <code class = "language-sql" >SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core" ) DESC</code>
|
登入後複製
方法三:優先處理“core”,然後按常規順序排序
如果需要優先處理“core”,然後按欄位中其他值的常規順序排序:
1 2 3 | <code class = "language-sql" >SELECT id, name, priority
FROM mytable
ORDER BY FIELD(name, "core" ) DESC, priority</code>
|
登入後複製
注意事項:
- 此方法可能僅適用於MySQL。
- FIELD() 函數傳回值的基於1的索引。如果值不在提供的清單中,它將傳回零,因此通常需要 DESC。
以上是在對 MySQL 結果進行排序時,如何決定特定行的優先順序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!