首页 新闻 赞助 找找看

linq连表查询 3张表以上

0
悬赏园豆:10 [已解决问题] 解决于 2013-10-31 11:18

A表字段   ID ,CreateID ,APPROVALUSERID

B表字段  UserID,Name

我想把A表中的所有ID都对应到B表的name 所以需要连3表查询 求大神教我语法

微风吹过12x的主页 微风吹过12x | 初学一级 | 园豆:73
提问于:2013-10-31 10:14
< >
分享
最佳答案
0

from t1 in A

from t2 in B

from t3 in B

from t4 in B

where t1.Id=t2.UserId and t1.CreateID =t3.UserId and t1.APPROVALUSERID=t4.UserId

select {}

这是内连接的写法。

收获园豆:10
幻天芒 | 高人七级 |园豆:37175 | 2013-10-31 11:16
其他回答(1)
0

不明白啥意思。是A表的三个ID 分别与B表的UserID连接,然后对应Name吗?

jone_e | 园豆:1410 (小虾三级) | 2013-10-31 11:03

恩 

支持(0) 反对(0) 微风吹过12x | 园豆:73 (初学一级) | 2013-10-31 11:04

@苟活的意义: var list = (from a in A join b in B on a.ID equals b.UserID select b).Union(from a in A join b in B on a.CreateID equals b.UserID select b).Union(from a in A join b in B on a.ApprovalUserID equals b.UserID select b);

试试吧,徒手写的。。

支持(0) 反对(0) jone_e | 园豆:1410 (小虾三级) | 2013-10-31 11:10

@jone_e: 我汗 我发现被那个答案给坑了,语法根本通不过

支持(0) 反对(0) 微风吹过12x | 园豆:73 (初学一级) | 2013-10-31 11:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册