有人注意到了吗?如果有,如何解决这个问题?
当我按时间排序数据时,我会这样做。
upsert
上面的代码很好,但是当我这样做时。
SELECT TimeColumn FROM Table ORDER BY TimeColumn ASC
排序不正确。
如何解决这个问题? TYSM
答案 0 :(得分:2)
您的问题是您正在使用与列相同的名称重命名表达式。别名用于排序 - 它没有正确排序。
只需使用限定列名:
SELECT date_format(TimeColumn, '%h:%i %p') AS TimeColumn
FROM Table t
ORDER BY t.TimeColumn ASC;
或者,为列添加不同的名称:
SELECT date_format(TimeColumn, '%h:%i %p') AS TimeColumn_hh12
FROM Table t
ORDER BY TimeColumn ASC;