You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用LINQ的Join语法连接三张数据表?求正确实现方案

使用LINQ Join语法连接三张数据表

没问题!用LINQ的join语法连接三张表其实和连两张表的思路一致,只要依次链式连接就好。我给你调整成标准的join写法,同时保留字段选择的逻辑:

using(Dataclasscontext DbContext = new Dataclasscontext()) 
{
    var result = (from t1 in DbContext.tbl1
                  join t2 in DbContext.tbl2 on t1.id1 equals t2.id1
                  join t3 in DbContext.tbl3 on t2.id2 equals t3.id2
                  select new 
                  {
                      t1.id1,
                      t1.name,
                      t2.class,
                      t2.std,
                      t3.xxx // 这里替换成你需要从tbl3获取的具体字段
                  }).ToArray();
}

简单说明:

  • 首先通过join将tbl1与tbl2用id1关联,得到包含两张表数据的中间集合
  • 接着再用一个join将这个中间集合与tbl3通过id2关联
  • 最后在select里按需选取你需要的字段即可

这种写法比嵌套from+where的方式更直观,和SQL中的多表连接逻辑完全对应,可读性也更强。

内容的提问来源于stack exchange,提问作者Minhaj Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:34:11