多个加入条件或。SQL到Linq

用户名

我一直在尝试将此SQL查询转换为Linq一段时间,但没有成功。我发现不可能在与linq的连接中使用OR条件,因此我尝试了相同的SQL查询,但是使用了子查询。子查询问题根本不起作用,它显示错误的数据。

带有JOIN的sqlquery:

SELECT DISTINCT Users.Fname FROM Friends
JOIN Users On Users.UserID = UserID2 OR Users.UserID = UserID1
WHERE UserID1 = 1 OR UserID2 = 1
AND Users.UserID != 1 AND Friends.PendingFriendRequest = 0

带有子查询的sqlquery:

SELECT DISTINCT Users.Fname FROM Friends, Users
WHERE Users.UserID = Friends.UserID1 OR Users.UserID = Friends.UserID2
AND UserID1 = 1 OR UserID2 = 1 
AND Users.UserID != 1 And Friends.PendingFriendRequest = 0
hu山

在您的查询中,如果首先条件UserID1 = 1匹配,然后其余查询将被忽略。

尝试在查询中添加方括号:

SELECT DISTINCT Users.Fname FROM Friends
JOIN Users On Users.UserID = UserID2 OR Users.UserID = UserID1
WHERE (UserID1 = 1 OR UserID2 = 1)
AND Users.UserID != 1 AND Friends.PendingFriendRequest = 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章