我有一列使用我想排序的ID。它具有從1到3的ID值。但是,我不想僅使用DESC的ASC,而是按2,3,1來自定義排序。我該如何做到這一點?MySQL訂單不使用ASC或DESC
3
A
回答
6
我認爲最簡單的方法是做這樣的:
SELECT * FROM `mytable` ORDER BY FIND_IN_SET(id, '2,3,1')
1
您可以添加與值的虛擬列將
MOD(ID, 3)
,並通過其訂購您的查詢上升。例如:
SELECT somecolumn, MOD(ID, 3) AS ordered_id FROM my_table ORDER BY ordered_id
0
未經測試:
SELECT ..., IF(ID=2, 1, IF(ID=3, 2, 3)) AS orderByValue
FROM ...
ORDER BY orderByValue
它使用IF function轉換ID值:
ID orderByValue
2 1
3 2
else 3
相關問題
- 1. 從ASC訂購到DESC訂單的MySQL子查詢
- 2. 訂單在沒有ASC和DESC
- 3. sort asc desc php,mysql
- 4. 使用ASC或DESC命令的主鍵?
- 5. MySQL的排序DESC和ASC
- 6. 由DESC和ASC訂購搜索結果
- 7. 以asc/desc順序訂購表格列
- 8. MySQL - 按某種不是ASC或DESC的順序排列
- 9. 如何按編號訂購desc或asc特定列
- 10. MPTT訂單DESC
- 11. order by asc and desc
- 12. PHP MYSQL ORDER BY DESC然後ASC
- 13. DESC掛起的MySQL命令; ASC很好
- 14. PHP MYSQL - 按鈕排序asc/desc
- 15. 搜索查詢順序由asc或desc
- 16. 在Rails中實現排序ASC或DESC
- 17. 包括嵌套與ASC或DESC爲了
- 18. php&wordpress ASC/DESC使用href和排序
- 19. 在ORDER BY CASE中使用ASC/DESC()
- 20. PHP PDO訂單ASC
- 21. MySQL ORDER BY取決於CASE order ASC或DESC
- 22. 排序由XXX按ASC或DESC排序,動態排序,mysql ...
- 23. 根據其他表的值排序MySQL查詢ASC或DESC
- 24. 根據條件(desc或asc)在MySQL查詢後添加逗號
- 25. 如何使用不區分大小寫的ASC或DESC,使用DISTINCT和UNION
- 26. 如何使用DESC或ASC對varchar數字列進行排序?
- 27. iPhone的sqlite desc vs asc?
- 28. sorty ASC or DESC列表
- 29. SQL Server ORDER BY [aggregation] DESC/ASC
- 30. 是什麼在ASC和DESC
這正是我正在尋找的。謝謝! – 2010-05-09 20:21:46
+1,非常優雅! – Heinzi 2010-05-10 15:10:39