可能重复:
SQL how to find rows which have highest value of specific column
这是我的表架构
--transaction_details--
transaction_id primary_key auto inc
entity_name
entity_transaction
现在,一个实体可以拥有多个交易。我想查询为每个实体进行的最后一次交易,这与查找特定列的this post不同。这可以通过为每个实体选择具有last / max transaction_id
的行来完成。但我无法编写此查询。我尝试使用entity_name
分组,但选择任意随机行。
答案 0 :(得分:0)
如果同一个entity_name的entity_transaction始终相同,你可以这样做:
select max(transaction_id), entity_name, entity_transaction
from transaction_details
group by entity_name, entity_transaction
如果同一entity_transaction
的{{1}}值不同,请使用此查询:
entity_name
答案 1 :(得分:0)
试试这个:
select *
from <table> t
join
( select entity_name,max(transaction_id) as transaction_id
from <table>
group by entity_name)a
on a.entity_name=t.entity_name
and a.transaction_id=t.transaction_id