【发布时间】:2014-04-25 02:55:18
【问题描述】:
是否可以根据在 certaid ID 上设置的订单值对数据进行排序?
我想做以下事情:
ID - Position
1 - 3rd
2 - 4th
3 - 5th
4 - 6th
10 - 7th
11 - 8th
12 - 9th
13 - 10th
14 - 11th
83 - 2nd
84 - 1st
我一直在尝试实现这个,但它没有生成正确的顺序:
SELECT * FROM table_name WHERE id IN (1,2,3,4,5,6,7,81,82) ORDER BY id = 3 DESC, id = 4 DESC, id = 5 DESC, id = 6 DESC, id = 7 DESC, id = 8 DESC, id = 9 DESC, id = 1 DESC, id = 2 DESC
如果我不清楚,请向我询问更多信息。提前谢谢你。
【问题讨论】:
-
您想按位置排序?
-
为什么用后缀存储位置?您可以只存储该字段的位置和顺序的整数值。