我有几个月使用Entity Framework的经验,并且主要是针对它编写了大量的数据检索linq查询.我来自一个沉重的SQL背景,如果我正在尝试调试性能问题,我正在尝试优化一些sql的性能和可读性.
我注意到一些生成的sql为带有列{col1,col2,col3}的tableA做了类似的事情
select
Extent1.col1
from
(
select col1, col2, col3 from tableA
) AS Extent1
Run Code Online (Sandbox Code Playgroud)
我的问题是,我如何阻止它做这些无用的派生表,而只是做
select col1 from tableA
Run Code Online (Sandbox Code Playgroud)
它需要哪里?我似乎无法弄清楚为什么它有时会这样做,有时它不会......