[英]SQL ORDER BY date DESC
我有一個帶有幾行時間戳的表(unix epoch)
例如:1620518277、1556748676、1547547076、1602756807、944971077(字段名稱 -> 日期戳)
並通過使用
SELECT *
FROM table
ORDER BY date_stamp DESC
此查詢的結果是:
1. 944971077
2. 1620518277
3. 1602756807
4. 1556748676
5. 1547547076
一切都很好,但如何 944971077 > 1620518277 ???
有人遇到過這種奇怪的 SQL 問題嗎?
據推測,您將這些時間戳存儲為字符串,而不是數字。 一個簡單的選項強制進行數字轉換:
SELECT * FROM table ORDER BY date_stamp + 0 DESC
如果timestamp
是字符串,則會發生這種情況。 一種簡單的方法是使用隱式轉換轉換為數字:
SELECT *
FROM table
ORDER BY date_stamp + 0 DESC
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.