sql获取日期限制为1

时间:2015-05-28 13:45:31

标签: php mysql date

使用时间戳,我使用这个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 |

3 个答案:

答案 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