获取列中具有不同值的最后记录

时间:2016-05-27 07:03:07

标签: mysql sql

我正在寻找使用MySQL的SQL查询。

这是我的表Trace。在里面我有id列,数据列,日期列和转换列的记录:

Id    Data  Date        Transition
1     775   2016-05-10  34
2     775   2016-05-11  35
3     775   2016-05-23  34 
4     775   2016-05-24  35

我想得到数据775的最后一个双记录的id(转换为34或35)。 在我给出的例子中,它将是记录3和4。 但如果id 4不存在,它只会给我3个。 如果只有一组34和35的记录用于这个数据775(所以只是ID 1和2),它什么都不给我。

谢谢

1 个答案:

答案 0 :(得分:0)

试试这个:

SELECT Id, Data, Date, Transition
FROM mytable
WHERE Id IN (SELECT MAX(Id)
             FROM mytable
             GROUP BY Data, Transition
             HAVING COUNT(*) > 1)