select * from SysUserTbl
where ID in (select UserID from SysUserGroupGrantTbl where UserGroupID in (select UserGroupID from SysUserGroupGrantTbl where UserID = 83))
就是上面这个sql语句改成勇linq实现的,谢谢了
...全文
25125打赏收藏
谁能帮我把这个sql语句改成linq的
select * from SysUserTbl where ID in (select UserID from SysUserGroupGrantTbl where UserGroupID in (select UserGroupID from SysUserGroupGrantTbl where UserID = 83)) 就是上面这个sql语句改成勇linq实现的,谢谢了
[Quote=引用 13 楼 lemist 的回复:]
from su in sysusertbl
join sugg in SysUserGroupGrantTbl
on su.ID equals sugg.userid
join sugg2 in SysUserGroupGrantTbl
on sugg.usergroupid equals sugg2.usergroupid
where sugg2.userid == 83
select su
[/Quote]
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
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;
from su in sysusertbl
join sugg in SysUserGroupGrantTbl
on su.ID equals sugg.userid
join sugg2 in SysUserGroupGrantTbl
on sugg.usergroupid equals sugg2.usergroupid
where sugg2.userid == 83
select su
from p in db.SysUserGrouGrantTbl.Where(d=>d.UserID = 83)
join q in db.SysUserGroupGranTbl
on p.UserGroupID equals q.UserGroupID
join o in SysUserTbl
on o.ID equals p.UserID
Select o
dim db as new datacontext
dim temp1 =from o in db.SysUserGroupGrantTbl where o.UserID=83 select o.UserGroupID
dim temp2 =from o in db.SysUserGroupGrantTbl where temp1.contains(o.UserGroupID) select o.UserID
dim result=from o in db.SysUserTbl where temp2.contains(o.id) select o
string sql = "select * from SysUserTbl where ID in (select UserID from SysUserGroupGrantTbl where UserGroupID in (select UserGroupID from SysUserGroupGrantTbl where UserID =83))";
var query = db.ExecuteQuery<SysUserTbl>(sql);
foreach (var e in query)
{
string ss = ss + e.ID.ToString() ;
}