我有以下表格结构:
请求表:
id insret_time account id
------------------------------------
1 2018-04-05 08:06:23 abc
2 2018-09-03 08:14:45 abc
3 2018-08-13 09:23:34 xyz
4 2018-08-04 09:25:37 def
5 2018-08-24 11:45:37 def
我需要找到帐户ID 和def的最新记录。我不在乎xyz。
我尝试使用groupby和innerjoin方法来获得结果,但是没有成功地将结果限制在我关心的用户列表中。请给出建议
更新:谢谢大家的反馈。谢谢你!我需要整行作为输出。我使用id列而不是timestamp来获取最新的记录,因为它是自动递增的这是我最终想到的,它提供了我需要的输出:
select t.* FROM table t
join (select max(table.id) as maxNum from table
where account_id in ('abc','def') group by account_id) tm on t.id = tm.maxNum;
2条答案
按热度按时间brjng4g31#
我想这就是你要找的
cwtwac6a2#
你可以用
not in
忽略xyz
记录和下订单desc
:你也可以用
!=
仅用于一个表达式的运算符:希望有帮助:)