我们有带有列的下表:
CategoryId |以CategoryId为主键的CategoryName。
我们有以下数据:
0 Other
1 Bumper
2 Door
3 Roof
4 Fender
我从这些表中使用select *,并且仅按上述顺序获得行,即首先为0,最后为4。
有什么办法可以让我最后得到0?即1,2,3,4,0?
最佳答案
select * from yourtable order by CategoryId=0,CategoryId
您可以在order by子句中使用任意表达式。通过首先按CategoryId = 0排序,您将得到所有错误的记录,然后是真实的记录(显然只有一条,因为它是主键)。然后,这些记录集中的每组都按CategoryId排序。
关于mysql - mysql:有什么方法可以以不同于存储顺序的顺序获取记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45843957/