我有一个包含ID,产品名称和TIMESTAMP字段的表,包括'ON UPDATE CURRENT_TIMESTAMP'。因此,每次触摸产品时,时间戳都会获得最新的时间戳。
该表已导入,我尝试仅获取最新添加的内容,但无法删除旧数据。
以下简化表格:
ID, Product, timestamp
1, A, 2016-10-20 15:10:39
2, B, 2016-09-10 12:41:21
3, C, 2016-10-20 15:11:55
4, D, 2016-08-01 16:18:21
5, E, 2016-10-19 10:00:12
6, F, 2016-09-10 12:41:20
我想获得以下输出:
ID, Product, timestamp
1, A, 2016-10-20 15:10:39
3, C, 2016-10-20 15:11:55
基本上我不关心时间戳的时间部分......只关注日期。有没有办法将输出限制在时间戳字段中的最近日期,无论实际当前日期是什么?
答案 0 :(得分:2)
一种方法使用子查询来标识最大(最近)日期,然后仅限制为共享此日期的记录:
SELECT *
FROM yourTable
WHERE DATE(timestamp) = (SELECT MAX(DATE(timestamp)) FROM yourTable)
-- ORDER BY timestamp (or whatever column you want to use for ordering)