首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

哪位高手能帮小弟我把这个sql语句改成linq的

2012-02-24 
谁能帮我把这个sql语句改成linq的select * from SysUserTblwhere ID in (select UserID from SysUserGroup

谁能帮我把这个sql语句改成linq的
select * from SysUserTbl
where ID in (select UserID from SysUserGroupGrantTbl where UserGroupID in (select UserGroupID from SysUserGroupGrantTbl where UserID = 83))

就是上面这个sql语句改成勇linq实现的,谢谢了

[解决办法]
用Contains可以实现:

var query = 
from S in Context.SysUserTbl
where (from S1 in Context.SysUserGroupGrantTbl 
where (from S2 in Context.SysUserGroupGrantTbl 
where UserID = 83
select S2.UserGroupID 
).Contains(S1.UserGroupID)
select S1.UserID 
).Contains(S.ID) 
select S;
[解决办法]
没有测试,也许有误

var sysuser=from su in SysUserTbl
join sugg in SysUserGroupGrantTbl on su.ID equals sugg.UserID
join sug in SysUserGroupGrantTbl on sugg.UserGroupID euals sug.UserGroupID
where sug.UserID=83
select su

热点排行