我正在处理一个组织的应用程序。 这里我在数据库表中有一些事件。现客户对其 View 的要求如下。
- 第一个事件应该是今天的事件(如果有的话)
- 那么即将发生的事件应该从今天开始。就像今天一样 01-11-2011 那么下一个事件应该是 02-11-2011(如果有的话) 下一个应该是 03-11-2011 等等....
- 列出所有即将发生的事件后,您可以显示旧的 事件。
我只是想知道我是否可以在一次查询中完成这项任务。你能建议我一些查询吗?
这是表结构。
目前我有这个问题。
SELECT * FROM tbl_event ORDER BY event_date DESC;
本应用为Codeignitor框架,MySql为数据库类型。
最佳答案
SELECT ...
...
ORDER BY (event_date = curdate()) DESC, // today's events
(event_date > curdate()) DESC, // future events
event_date DESC; // past events
关于php - 如何编写具有多个数据顺序的 MySql 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8002154/