簡體   English   中英

將時間列從24小時格式轉換為12小時格式時,排序不正確

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM