区别使用条件Linq

时间:2014-07-16 15:46:26

标签: sql linq

所以我花了一些时间用这个linq并且无法提出最佳解决方案。考虑以下linq

enter image description here

我希望能够根据BaseItemID值选择不同的条目,例如,每当我有两个Chicken条目时,我想选择第二个条目,因为它取代了第一个条目。另一种表达方式是每当条目具有BaseItemID值时,选择此条目并从列表中删除基本条目,因此将返回列表并删除项目1003。另一种表达条件的方法是仅选择BaseItemID字段中任何行中不存在其ID值的项目。

如果我可以按名称分组,然后选择 BaseItemID!= null和Count>的项目,那么问题就很容易了。 1 ,但事实并非如此,名称字段不是唯一的,我不能真正依赖它来进行分组。

由于

1 个答案:

答案 0 :(得分:1)

您可能必须自己加入表格:

from i in Items
where i.Category.ServiceProviderID == 2
&& !Items.Any(ii=>ii.BaseItemID == i.ID)

你应该做join,这应该是更好的表现。