【发布时间】:2014-03-09 21:55:15
【问题描述】:
我有一个 DATE 类型的列 (startdate)。
我正在使用 DATE_FORMAT 从查询中获取“Month XX, XXXX”的结果。
但是当我 ORDER BY 日期按字母顺序排序时...如何按时间顺序排列日期?
当我在 ORDER BY 中调用 startdate 列时,我可以对其进行不同的格式设置,以便按时间顺序排序吗?
这是查询...
SELECT location, course, DATE_FORMAT( startdate, '%M %D, %Y' ) AS startdate
FROM `courses` c
LEFT JOIN `locdate` l ON c.id = l.id
ORDER BY startdate ASC
LIMIT 0, 10
【问题讨论】:
-
正如@Marc 回答的那样,
ORDER BY l.startdate ASC很好,但将DATE_FORMAT(l.startdate, '%M %D, %Y' ) AS startdate更改为DATE_FORMAT(l.startdate, '%M %D, %Y' ) AS startdate_MDY并且在脚本中使用startdate的地方,请改用startdate_MDY。