110,538
社区成员
发帖
与我相关
我的任务
分享
select UserInfoID,UserName,NickName,Email
from User_Info
where UserInfoID in
(
select UserInfoID
from User_Classroom_R r
where r.ClassroomInfoID in
(
select ClassroomInfoID
from Classroom_Info
where UserInfoID=1
)
)
select UserName,count(UserName) from User_Info
where UserName like 'z%'
group by UserName
第一个
var result = from user in db.UserInfos
where (from r in db.User_Classroom_R
where db.Classroom_Info.Any(ri => ri.ClassroomInfoID == r.ClassroomInfoID && ri.ClassroomInfoID == 1)
select r).Any(r => r.UserInfoID == user.UserInfoID)
select user;
括号中的可以写成子查询,延迟执行的
第二个
var result = from user in db.Users
where user.UserName.StartsWith("z")
group user by user.UserName into g
select new {g.Key, g.Count()};
var query = from x in User_Info
where UserName.StartsWith("z")
group x by x.UserName into g
select new { UserName = g.Key, Count = x.Count() };
var query = from x
in User_Info
let query2 =
from r
in User_Classroom_R
let query3 =
Classroom_Info.Where(y => y.UserInfoID == 1).Select(y => y.ClassroomInfoID)
where query3.Contains(r.ClassroomInfoID)
select r.UserInfoID
where query2.Contains(x.UserInfoID)
select new { x.UserInfoID, x.UserName, x.NickName, x.Email };