请求 SQL 结果后如何排序?

有没有办法在 SQL 结果交付后对其进行排序?到目前为止我有两个价值观。我的代码当前返回结果,并可以按ORDER BY date ASC 感兴趣的数据库条目的日期进行排序。


| date       | weeks |

| 2020-07-01 | 2     | 

| 2020-07-01 | 3     |

| 2020-07-01 | 5     |

周表示距离下一个日期还有多少周。所以 2020-07-21、2020-08-03 等等(我能够返回这些值)。需要order by能够对日期进行排序并考虑从最近周到最远周的周值。


我尝试使用名为 Final_date 的新字段更新数据库,尽管这会使一切变得混乱。


返回数据后,我可以使用以下命令找到新日期:


$addWeeks = strtotime('+'.$numberOfWeeks.' weeks', strtotime($last));

尽管如此,我找不到一种方法来按新值对结果进行排序。


料青山看我应如是
浏览 123回答 1
1回答

撒科打诨

排序依据需要能够对日期进行排序,并考虑从最近周到最远周的周值。我想你想要:select t.*from mytable torder by t.date + interval t.weeks week请注意,这假设列date是date数据类型,而不是字符串;否则,您需要先将其转换为日期,str_to_date()例如使用。
打开App,查看更多内容
随时随地看视频慕课网APP