我有这个结构的表
id |from_id |to_id |date
1 |1 |3 |25
2 |1 |3 |24
3 |2 |3 |28
4 |2 |3 |20
5 |2 |3 |30
我想检索具有最大日期的所有from_id(与具有最大日期的id不同)
即
id |from_id |to_id |date
1 |1 |3 |25
5 |2 |3 |30
我使用了这个查询
`select * from table where to_id=3 group by from_id order by date desc`
但是我得到了具有最小日期值的from_id
答案 0 :(得分:2)
试试这个 -
SELECT tablename.*
FROM (SELECT from_id, MAX(date) dat
FROM tablename
GROUP BY from_id) innerquery
JOIN tablename
ON innerquery.from_id = from_id
AND innerquery.dat = date