[英]Incorrect Sorting when Converting a Time Column from 24 to 12 Hr Format
有人注意到了嗎? 如果可以的話,該如何解決?
當我按時間對數據進行排序時,我會這樣做。
SELECT TimeColumn FROM Table ORDER BY TimeColumn ASC
上面的代碼很好,但是當我這樣做時。
SELECT date_format(TimeColumn, '%h:%i %p') AS TimeColumn FROM Table ORDER BY TimeColumn ASC
排序不正確。
如何解決這個問題? TYSM
您的問題是您要重命名與列名稱相同的表達式。 別名用於排序-排序不正確。
只需使用合格的列名:
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;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.