2
A
回答
4
是(假设你已经在你的表数据列名为month
和day
)
难道你不希望
SELECT * FROM calendar ORDER BY ((`month` * 31) + `day`)
关系吗?
编辑
其实只是用
SELECT * FROM calendar ORDER BY `month`, `day`
除非我失去了一些东西?
+0
实际上是:D或高于31的任何数字 – Samuel 2010-09-13 15:15:29
2
您可以在查询结果的任何列的顺序。如果你可以在SELECT
这样的即时准备好的信息,那么你可以ORDER BY
它。
1
如果你在你的表列称为month
和day
,那么你应该让你的查询一些改变,它会工作:
SELECT * FROM calendar ORDER BY ((month * 100) + day)
我删除引号从您的列名,并增加你的月乘以一个数量级,以确保在月和日的数字大于或等于10时正确排序。另外,我更正了拼写为ORDER
的拼写错误。
但
- 您的查询将不会正确地排序按年(不知道这是否事项您的使用情况)。
- 由于
ORDER
条款的动态性质,您的查询将在大型数据集上执行缓慢。考虑使用单个日期列并在其上创建索引。
相关问题
- 1. MySQL查询GROUP BY/ORDER BY计数
- 2. ORDER BY打破MySQL查询
- 3. MYSQL GROUP BY - 缓慢查询
- 4. ORDER BY和GROUP MySQL查询
- 5. MySQL GROUP BY查询问题
- 6. MySQL查询,MAX()+ GROUP BY + WHERE
- 7. MySQL查询ORDER BY与模
- 8. MySQL查询,MAX()+ GROUP BY
- 9. MySQL查询的GROUP BY月
- 10. GROUP BY在MySQL查询
- 11. MySQL查询ORDER BY提供的条件
- 12. WHERE造成GROUP BY查询失败MYSQL
- 13. Mysql查询不会ORDER BY日期
- 14. 优化MySQL的GROUP BY查询
- 15. MySQL查询GROUP BY日/月/年
- 16. MYSQL查询:ORDER BY特定日期
- 17. MySQL查询使用DISTINCT和ORDER BY
- 18. MySQL中使用GROUP BY的SQL查询
- 19. ORDER BY在MySQL查询不工作
- 20. MySQL查询太慢与GROUP BY
- 21. mysql选择查询帮助 - ORDER BY
- 22. mysql“group by”非常缓慢的查询
- 23. 获得在MySQL组排好BY查询
- 24. 的MySQL到PostgreSQL查询别名GROUP BY
- 25. SELECT COUNT(id)AS GROUP BY MySQL查询
- 26. 在MySQL中优化ORDER BY LIMIT查询
- 27. MySQL的子查询,其中和group by
- 28. MySQL查询命令记录ORDER BY
- 29. MySQL的相关子查询SUM()ORDER BY
- 30. SQL查询 - GROUP BY,PARTITION BY
你的表中有名为'month'和'day'的列吗?还是你想要从日期字段中解析出这些列? – Asaph 2010-09-13 15:13:54
我有colums日月(数值) – Samuel 2010-09-13 15:34:16