使用时间戳,我使用这个date('Y-m-d h:i:s A')
并存储为字符串。我的问题是我无法获得插入日期的最新值,因为我正在使用:
SELECT id,date 从表 ORDER_BY日期 DESC限制1
正在提取的输出为2015-05-28 09:11:16 PM
id = 10
,但我要提取的是id = 12
。有没有办法比较这些值,并选择最新的id 12?
表按日期desc
排序| id | date |
================================
| 12 | 2015-05-28 09:26:20 PM |
| 11 | 2015-05-28 09:26:04 PM |
| 10 | 2015-05-28 09:11:16 PM |
答案 0 :(得分:5)
您的日期列似乎不是datetime类型,而是varchar。您必须在排序时将其转换为日期时间:
SELECT FROM table
ORDER BY convert(datetime, date, 103) ASC
OR与MySQL:
ORDER BY STR_TO_DATE(datetime, '%m/%d/%Y');
答案 1 :(得分:1)
我会ORDER BY id DESC LIMIT 1
这应该从最早到最晚给你ID,并给你当前的记录。
答案 2 :(得分:0)
在MySQL中你可以这样做:
SELECT id, date FROM table ORDER BY UNIX_TIMESTAMP(date) DESC LIMIT 1