有人可以告诉我,为什么 Linq to Entities 将多对一关系转换为left outer join
而不是inner join
?因为对 DB 本身存在引用约束,以确保在正确的表中有记录,所以inner join
应该使用它(它会工作得更快)
如果关系多到 0..1 left outer join
将是正确的。
问题
是否可以以某种方式编写 LINQ,以便将其转换为inner join
而不是left outer join
. 它将大大加快查询执行速度……我以前没有使用过 eSQL,但在这种情况下使用它是否明智?它会解决我的问题吗?
编辑
我更新了标签以包含我在后台使用的技术:
- 实体框架 V1
- 用于 Mysql 的 Devart dotConnect
- MySql 数据库
如果有人可以测试在 Microsoft SQL 服务器上是否也是如此,那么如果这是 Devart 的问题或者它是一般的 L2EF 功能,它也会给我一些见解......但我怀疑 EF 是这里的罪魁祸首。