栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

LINQ加入-表现

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

LINQ加入-表现

Linq to SQL不会将连接提示发送到服务器。因此,使用Linq to SQL的联接的性能将与“直接”发送到服务器(即使用纯ADO或SQL Server
Management Studio)的同一联接的性能相同,而没有指定任何提示。

Linq to SQL也 不允许
您使用联接提示(据我所知)。因此,如果要强制执行特定类型的联接,则必须使用存储过程或

Execute[Command|Query]
方法来执行。但是,除非您通过编写来指定
INNER[HASH|LOOP|MERGE] JOIN
联接类型,否则SQL Server始终会选择它认为最有效的联接类型-查询的来源无关紧要。

其他Linq查询提供程序(例如Entity framework和NHibernate Linq)将执行与Linq to
SQL完全相同的操作。这些都没有直接了解如何为数据库建立索引的知识,因此它们都没有发送连接提示。

Linq to Objects有点不同-在SQL Server中,它将(几乎?)始终执行“哈希联接”。这是因为它缺少执行合并联接所需的索引,并且哈希联接
通常
比嵌套循环更有效,除非元素的数量很小。但是首先确定一个元素中的元素数量

IEnumerable<T>
可能需要完整的迭代,因此在大多数情况下,假设最坏的情况并使用哈希算法会更快。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/456317.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号