我当前可以尝试运行此查询来获取最新事件:
SELECT id, id2, MAX(event_date), numeric as numeric
FROM table
group by id, id2;
基本上问题是每个 event_date 可以有 2 个数值,我的目标是只能选择这些数值中的最高值。例如
但是我似乎无法在单个查询中做到这一点。我尝试过使用having子句(但这限制太多,会删除有效值)赋值运算符,但我有点困惑。必须有一种简单的方法来做到这一点。非常感谢任何帮助。
最佳答案
由于选择max of event_date后需要获取数值字段的最大值,因此需要一个子查询来获取数值字段的最大值。
SELECT id, id2, MAX(event_date),numeric_field
FROM event_table A
where numeric_field in
(select max(numeric_field) from event_table
where A.id = id and A.id2 = id2 and A.event_date = event_date)
group by id, id2;
我创建了一个 SQL fiddle 来尝试不同的示例。 SQLFiddle Link
注意:我已将查询中的“numeric”字段重命名为“numeric_field”
关于mysql - 将事件日期链接到组中的另一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33921053/