【发布时间】:2020-05-24 11:32:47
【问题描述】:
这里有两种方法可以从有序表中获取前 1 行
慢一点:
select top 1 *
from movies m
where m.Distributor = 'any'
order by m.IMDB_Rating desc
更快:
select top 1 m.*
from movies m
left join movies m2 on m.Distributor = m2.Distributor
and m2.IMDB_Rating > m.IMDB_Rating
where m.Distributor = 'any'
and m.IMDB_Rating is not null
and m2.id is null
第一个更简单,但第二个更快。
那么,有没有办法使用实体框架进行第二次查询?
如果无法在 EF 或 EF Core 中进行此查询,如果可能的话,您能否给我另一个与第二个一样快的查询?
很抱歉,如果重复,我找不到任何问题的答案
非常感谢!
【问题讨论】:
标签: sql sql-server entity-framework entity-framework-core