sql server下,怎么实现低损耗的Distinct

前几天问了一个ASP.Net MVC下EF动态查询导航属性的问题,实现后发现损耗有些大,经查,是使用了Distinct的原因,百度了一下,大家都说Distinct性能有问题。

我的页面使用了三个联动的select和一个PartialView,Select显现的是Distinct之后的JSON数据,本地测试750ms上下而PartialView也就是230ms上下。

请问有什么方法可以提高查询的性能?

哈士奇WWW
浏览 337回答 6
6回答

MYYA

不一定是Distinct的原因,建议检查一下是否是索引的问题

HUX布斯

Distinct性能 问题 这种问题在数据量达到100万之前可以直接忽略 建议用缓存解决

慕的地10843

汗了,这个表才一万多条记录

墨色风雨

GROUP BY 比Distinct要好些

哔哔one

EF自动生成的SQL语句,会有两个嵌套的 Group By ,比单个 Group By 执行要快。

至尊宝的传说

楼主从以下几点优化查询 1、尽量少嵌套的sql语句。 2、索引是否优化? 3、能否用存储过程/函数代替? 4、数据量不是非常大的时候尽可能使用With函数。
打开App,查看更多内容
随时随地看视频慕课网APP