我需要根据几个条件从数据库中选择最后插入的行。以下是数据示例。
TIMESTAMP CHANNEL LANGUAGE FORECAST
1 CALL DUTCH 10
1 EMAIL DUTCH 20
4 CALL DUTCH 10
2 EMAIL DUTCH 20
4 CALL DUTCH 10
3 CALL SPANISH 20
3 EMAIL SPANISH 10
4 CALL DUTCH 10
每次添加记录时都会插入时间戳,但是,可以有更多具有相同时间戳的记录,因为可以在同一时间戳插入大量记录。
我需要检索具有最新时间戳的所有记录。因此,在这个例子中,结果应该是:
TIMESTAMP CHANNEL LANGUAGE FORECAST
4 CALL DUTCH 10
4 CALL DUTCH 10
4 CALL DUTCH 10
我尝试使用 max(timestamp) 语句,但最终也得到了“较早”的时间戳。
我认为这应该很容易吗?
最佳答案
你想要
SELECT *
FROM MyTable
WHERE TIMESTAMP =
(
SELECT MAX(m.TIMESTAMP)
FROM MyTable m
)
子查询中不需要 ORDER BY
,因为它只返回一个结果。
关于mysql - 如何获取每个条件的最后插入行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25427424/