说我有一张桌子
Id int
Region int
Name nvarchar
select * from table1 where region = 1 and name = 'test'
select * from table1 where name = 'test' and region = 1
Run Code Online (Sandbox Code Playgroud)
性能会有差异吗?假设没有索引
与LINQ一样吗?
因为你的限定符本质上实际上是相同的(无论where子句的顺序是什么并不重要),那么不,这些之间没有区别.
对于LINQ,您需要知道LINQ to SQL实际发出的查询(您可以使用SQL事件探查器查找).有时查询将是您能想到的最简单的查询,有时候如果没有您意识到这将是一个复杂的问题,因为诸如依赖于FK或其他此类约束之类的事情.LINQ也不会使用*来进行选择.
唯一真正的方法是找出两个查询的SQL Server查询执行计划.要了解有关该主题的更多信息,请访问:
归档时间: |
|
查看次数: |
516 次 |
最近记录: |