繁体   English   中英

SQL / Linq查询从多对多中选择

[英]SQL/ Linq query select from many to many

我的SQL数据库中具有以下(简化的)结构。 在此处输入图片说明

现在,我想选择用户尚未加入的所有组。 如果查询是使用Linq / Entity Framework编写的,则将有所帮助,但是我也可以使用SQL语句。

我尝试使用Include(使用EF):

.Include(g => g.Group_User) 

在查询中,然后使用以下命令:

.Where(g => g.Group_User.UserId != userId) 

但这是行不通的,可能完全不是执行此类查询的正确方法。

谢谢阅读

我想选择用户尚未加入的所有组。

因此,您希望所有没有使用该UserId的组用户的组,因此请使用!Any==

var q = db.Group.Include(g => g.Group_User)
    .Where(g => !g.Group_User.Any(gu => gu.UserId == userId));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM