Lou*_*caj 1 c# sql linq asp.net-mvc
好的,所以我一直试图弄清楚如何在LINQ查询中嵌入多个选择,并且一直没有使用LINQ.
我想出了一个相当直接的简单SQL语句,我试图转换,如果有人可以帮助将其转换为LINQ并在那里解释逻辑,我将不胜感激.
SELECT * FROM TABLE_A
WHERE TABLE_B_REF IN
(SELECT TABLE_B_REF FROM TABLE_B
WHERE TABLE_B.TABLE_C_REF IN
(SELECT TABLE_C_REF FROM TABLE_C WHERE C_NUMBER = '10001'))
Run Code Online (Sandbox Code Playgroud)
我已经google了一下,但我得到的内容太复杂,无法跟进多个嵌入式查询.
一个SQL连接似乎要简单得多这里.假设您已正确设置导航属性,那将看起来像这样:
from a in db.TableA
where a.TableB.TableC.C_Number == "10001"
select a;
Run Code Online (Sandbox Code Playgroud)
或者用流利的语法:
db.TableA.Where(a => a.TableB.TableC.C_Number == "10001")
Run Code Online (Sandbox Code Playgroud)
相应的SQL将是这样的:
SELECT a.*
FROM TABLE_A a
JOIN TABLE_B b ON a.TABLE_B_REF = b.TABLE_B_REF
JOIN TABLE_C c ON b.TABLE_C_REF = c.TABLE_C_REF
WHERE c.C_NUMBER = '10001'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |