我的查询中有一个复杂的排序问题。MySQL complex ORDER BY issue
原始,无序数据:
+------+--------+-----------+
| id | job_id | action_id |
+------+--------+-----------+
| 1 | 2 | 1 |
| 2 | 2 | 2 |
| 3 | 1 | 1 |
| 4 | 2 | 3 |
| 5 | 4 | 1 |
| 6 | 1 | 2 |
| 7 | 3 | 1 |
| 8 | 3 | 2 |
| 9 | 4 | 2 |
+------+--------+-----------+
需要排序:
- 最大的id是最近添加:
+------+--------+-----------+ | id | job_id | action_id | +------+--------+-----------+ | 7 | 3 | 1 | | 8 | 3 | 2 | | | | | * blank lines added for clarity, | 5 | 4 | 1 | not desired in actual data | 9 | 4 | 2 | | | | | | 3 | 1 | 1 | | 6 | 1 | 2 | | | | | | 1 | 2 | 1 | | 2 | 2 | 2 | | 4 | 2 | 3 | +------+--------+-----------+
这种顺序的理论条目
- 最近的ID以1
- 的action_id然后用上升action_ids具有相同JOB_ID的条目
- 然后1所
- 循环往复
编辑的下一个最近的action_id:我我无法在列表中添加列以帮助排序,正如我在其他解决方案中看到的排序问题。
任何帮助,非常感谢!
谢谢,这工作完美。在'ORDER BY'中也可以完成所有的积分! – Matt 2014-10-17 08:03:04