以下2个查询之间是否存在性能差异,如果是,那么哪个更好?:
select
q.id,
q.name
from(
select id, name, row_number over (partition by name order by id desc) as row_num
from table
) q
where q.row_num = 1
相对
select
max(id) ,
name
from table
group by name
(结果集应该是一样的)
这是假设没有设置索引。
更新:我对此进行了测试,并且group by
速度更快。