我最近一直在触底。
我目前要做的是按日期“排序”选择的数据库条目,如果日期已经过去且值X没有改变,则将其附加到列表的顶部,如果值已在底部更改。
使用某种图形解释我的问题可能会好一点。
Entry | "date" | X
1 | 10.07 | 0
1 | 11.07 | 1
1 | 12.07 | 1
1 | 13.07 | 1
1 | 14.07 | 1
1 | 15.07 | 1
1 | 16.07 | 1
1 | 17.07 | 1
1 | 18.07 | 0
1 | 19.07 | 1
这应转换为
Entry | "date" | X
1 | 19.07 | 1
1 | 17.07 | 1
1 | 16.07 | 1
1 | 15.07 | 1
1 | 14.07 | 1
1 | 13.07 | 1
1 | 12.07 | 1
1 | 11.07 | 1
1 | 18.07 | 0
1 | 10.07 | 0
甚至可以使用“纯”mysql吗? 我一直试图通过按日期“排序”来实现它的工作,但这不是我最终想要完成的事情。
SELECT * FROM table_entries ORDER BY start_date ASC LIMIT 25
度过美好的一天
答案 0 :(得分:0)
通过&x 39; x'和' date'领域。因此,所有记录将按照' x'排序。首先,然后按日期。
SELECT * FROM table_entries ORDER BY x DESC, start_date DESC LIMIT 25
答案 1 :(得分:0)
如果我说得对,你想按X值排序(在顶部有一个),然后按日期排序。
您可以使用ORDER BY X,start_date
来实现它
在您的查询中。
您可以在ASC
和DESC
之后指定X
或start_date
以获得所需的效果
你的查询会变成这样的:
SELECT * FROM table_entries ORDER BY X DESC, start_date ASC LIMIT 25