-2
一定proccess后,我婉删除从表中重复并提交更改,所以只有单值保持。LINQ - 如何去除重复行的表
我有去除三个标准:
- 名称
- 日期
- 状态(始终为1)
因此,如果有同名的记录,以及相同的日期和相同的状态...删除一个。哪一个并不重要。
我: dbContext.tbl_mytable
一定proccess后,我婉删除从表中重复并提交更改,所以只有单值保持。LINQ - 如何去除重复行的表
我有去除三个标准:
因此,如果有同名的记录,以及相同的日期和相同的状态...删除一个。哪一个并不重要。
我: dbContext.tbl_mytable
既然你是在谈论删除记录,你需要测试这首。
所以,如果有记录具有相同的名称,相同的日期和相同的状态...删除一个。哪一个并不重要。
我假设你想除去一个,即,如果你有三个记录具有相同的细节,你删除两个并留下一个。
如果是这样,你应该能够通过{名称,日期,状态}分组,然后选择以外的所有各组中的第一个记录来识别重复。
即像
var duplicates = (from r in dbContext.tbl_mytable
group r by new { r.Name, r.date, r.status} into results
select results.Skip(1)
).SelectMany(a=>a);
dbContext.tbl_mytable.DeleteAllOnSubmit(duplicates);
dbContext.SubmitChanges();
所以,你正在使用'Linq到SQL',对不对?表格是否有主键? – qxg
是的。我使用Linq到SQL。表具有主键。 –