1

表:

用户

userid       username     imageurl
1            venkat       http://test.jpg
2            raghu        http://test1.jpg
3            ravi         http://test2.jpg

朋友们

id    userid    frienduserid     status
1     1           2              true
2     2           1              false

日志状态

id   userid   sessionid
1     1       7482748
2     1       8274282
3     2       3123123

如果我通过userid=1然后需要拉他的朋友username,imageurl,status和他的任何朋友至少有一个sessionid然后给状态为“真实”。

由于我能够加入用户,朋友表给他的朋友username,imageurlstatus. 但是如何检查他至少有一个sessionid

我的查询:

var result = from pa in cxt.Users
             join us in cxt.Friends on pa.User_Id equals us.Friend_UserId
             where us.User_Id == incID 
             select new
                    {
                       us.frienduserid,
                       pa.User_Name,
                       pa.ImageURL,
                       us.status
                    };
4

1 回答 1

3
var result = 
from user in cxt.Users
join friend in cxt.Friends on user.UserId equals friend.FriendUserId
where user.UserId == incId
select new
{
    FriendUserId = friend.FriendUserId,
    UserName = user.UserName,
    ImageUrl = user.ImageUrl,
    Status = cxt.LogStatus.Any(s=>s.UserId == user.UserId)
};
于 2012-05-16T06:34:37.003 回答