我有一列使用我想排序的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. sort asc desc php,mysql
- 3. 使用ASC或DESC命令的主键?
- 4. MySQL的排序DESC和ASC
- 5. 由DESC和ASC订购搜索结果
- 6. MySQL - 按某种不是ASC或DESC的顺序排列
- 7. PHP MYSQL - 按钮排序asc/desc
- 8. DESC挂起的MySQL命令; ASC很好
- 9. PHP MYSQL ORDER BY DESC然后ASC
- 10. 在Rails中实现排序ASC或DESC
- 11. 搜索查询顺序由asc或desc
- 12. php&wordpress ASC/DESC使用href和排序
- 13. 在ORDER BY CASE中使用ASC/DESC()
- 14. PHP PDO订单ASC
- 15. 根据其他表的值排序MySQL查询ASC或DESC
- 16. 排序由XXX按ASC或DESC排序,动态排序,mysql ...
- 17. sorty ASC or DESC列表
- 18. SQL Server ORDER BY [aggregation] DESC/ASC
- 19. 是什么在ASC和DESC
- 20. iPhone的sqlite desc vs asc?
- 21. 手动排序concat文本(不是ASC或DESC)
- 22. 如何使用DESC订购
- 23. 订购一个字段,包括ASC和DESC
- 24. 如何订购2个SQL字段在asc和desc动态
- 25. 单个SQL查询来检索特定的顺序(不ASC/DESC)
- 26. 构建一个dynamoDB表,以启用ASC或DESC对表中*项目的订单分页
- 27. 所有订单的日期,订购desc
- 28. 在.NET中是否存在用于Asc或Desc排序的Enum?
- 29. 如何对通用列表Asc或Desc进行排序?
- 30. PHP MySQL排序顺序ASC/DESC只显示记录
这正是我正在寻找的。谢谢! – 2010-05-09 20:21:46
+1,非常优雅! – Heinzi 2010-05-10 15:10:39