gpt4 book ai didi

c# - 如何使用 linq 从表中跳过重复的 id 并选择仍然存在

转载 作者:太空宇宙 更新时间:2023-11-03 10:40:59 26 4
gpt4 key购买 nike

在表格中我有以下内容,

组号3786378737883788

所以我只需要取 3786、3787 id。如果我使用 distinct()它也需要3788。不知道linq应该用哪个方法。

IQueryable<Sub> subDetails=
from carSub in this.UnitOfWork.Repository<CarSub>().Queryable()
//from pcs in carSub.ConfirmedCarrier.CarrierCandidate.ProductCarrierScores
join p in this.UnitOfWork.Repository<ProductGroup>().Queryable() on carSub.Submission.PlacementID equals p.PlacementID
join pg in this.UnitOfWork.Repository<ProductGroupMember>().Queryable() on p.ProductGroupID equals pg.ProductGroupID
join pcs in this.UnitOfWork.Repository<ProductCarrierScore>().Queryable() on p.ProductGroupID equals pg.ProductGroupID

在 JOIN 内部 join pcs in this.UnitOfWork.Repository<ProductCarrierScore>().Queryable() on p.ProductGroupID equals pg.ProductGroupID这里只有我必须使用这个

pg 表示 ProductGroupMember。在该成员中,我必须仅传递唯一不重复的值。请指导我。我很卡

最佳答案

我会这样做:

  1. GroupId分组;
  2. 只获取组中有1个元素的;

代码如下所示:var groupIds = subDetails.GroupBy(x=>x.GroupId).Where(x=>x.Count()==1).Select(x=>x.Key)

附言可能有一些其他更快的解决方案,但这是首先想到的。

关于c# - 如何使用 linq 从表中跳过重复的 id 并选择仍然存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38660391/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com