MYSQL ORDER BY CASE 問題
在MySQL 中,在ORDER BY 子句中使用CASE 語句可讓您根據下列條件指定多個排序條件特殊條件。然而,當嘗試對兩個不同的時間戳列進行排序時,就好像它們是單一統一的時間戳記一樣,會出現挑戰。
考慮提供的表結構:
目標是將行排序以較早的時間戳,無論它是儲存在 timestamp_one 還是 timestamp_two 列中。以下查詢嘗試使用 CASE 語句來實現此目的:
雖然此查詢成功地對 id_one=27 的行進行正確排序,但它無法將時間戳合併為單一排序標準。
要解決此問題,可以如下修改查詢:
透過對每個條件使用單一CASE 表達式而不是單獨的CASE 語句,MySQL 將時間戳合併為單一排序標準。這可確保行按需要正確排序:
以上是如何使用 MySQL CASE 語句從兩個欄位中依較早的時間戳排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!