2013-12-08 51 views
0

我想先按表Target_Time對錶中的結果排序,如果它們具有相同的Target_Time,則按分類排序。 雖然,我只想訂購Target_Time,直到分鐘標記,並忽略秒數。我怎樣才能做到這一點?僅限DATETIME直到分鐘標記(MySQL)

我想要一些類似的東西,但我知道在ORDER BY語句中缺少一些東西。

SELECT * FROM Waiting_List ORDER BY Target_Time, Classification 
+0

你可以顯示一些數據的例子,它應該如何訂購? –

+1

按分鐘排序和按整個值排序有什麼區別? –

+0

例如: 患者1 目標時間:22:27 分類:2; 病人2 目標時間:22:27 分類:1; 病人3 目標時間:23:00 分類:1; 訂購:Patient2,Patient1,Patient3 –

回答

1

請嘗試以下操作。它將日期格式更改爲排除秒。

SELECT * FROM Waiting_List ORDER BY date_format(Target_Time, '%Y-%m-%d %H:%i'), Classification 
+0

由於涉及到每行計算,這在大型表格中可能會很痛苦。 – ceejayoz

1

測試:

SELECT * FROM Waiting_List 
ORDER BY STR_TO_DATE(DATE_FORMAT(Target_Time, '%m-%d-%Y %H:%i'), '%m-%d-%Y %H:%i'), Classification 

MySQL將記錄排序時截斷秒。將日期轉換爲字符串並將字符串轉換回日期進行比較。