mysql - 时间戳给出错误的结果

标签 mysql timestamp

我在使用时间戳处理我的项目时遇到了问题。我做了一个简单的数据库来说明问题:

id  timestamp           status
1   2014-01-14 14:14:29 old
2   2014-01-14 14:04:35 new
1   2014-01-14 14:15:19 new

我运行了以下查询:

SELECT MAX( TIMESTAMP ) AS TIMESTAMP, id, 
STATUS FROM  `proba` 
GROUP BY id

结果是:

TIMESTAMP           id  STATUS

2014-01-14 14:15:19 1   old

2014-01-14 14:04:35 2   new

我得到了正确的时间戳,但是错误的数据行(如果我添加多行,我总是会得到第一行)。

如果重要的话,我使用 phpMyAdmin - 2.11.4 :)

我该怎么办?我需要最新的一行(在确切的问题中,我也需要一个 id 组)。

谢谢!

最佳答案

SELECT stamp, p1.id,  p1.STATUS FROM `proba` p1 
INNER JOIN (
   SELECT MAX(timestamp) AS stamp FROM `proba` GROUP BY id 
) p2 ON p1.timestamp = p2.stamp

关于mysql - 时间戳给出错误的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21113903/

相关文章:

php - 试图在laravel中获取非对象错误的属性

php - Mysql 复制 - 值得吗?

ios - Instagram MIN_TIMESTAMP 没有返回它应该返回的所有图像

ios - Unix 时间戳在 ios 中始终关闭

scala - OpenJDK java.sql.Timestamp 与 Sun Java VM 的时间戳类不同吗?

postgresql - 不同的时区输出错误的值

ubuntu 14.04 中缺少 phpmyadmin .htpasswd 文件

mysql 加入条件

MySQL:如何防止删除?

javascript - 如何使用 jQuery 将 ISO 8601 格式的日期转换为时间戳?