2013-05-14 51 views
1

我有这样的LINQ查询,我想删除所有基于列MAILADR重复的(但保留其他列):LINQ - UNION - 删除重复的基础上单列

Dim dataObject = (From a In db.TABLE1 Select New With { 
     .ID = a.BENUTZERNR, 
     .MAILADR = a.EMAIL, 
     .BENUTZERGRP = a.USRGRP 
    }) _ 
    .Union(
     (From b In db.TABLE12 Select New With { 
     .ID = b.ID, 
     .MAILADR = b.MAILADR, 
     .BENUTZERGRP = b.BENUTZERGRP 
    }) _ 
    ) 
+0

那是什么意思*“删除所有基于列MAILADR重复的(但保留其他列)” *?要么删除重复项或保留它们。你不能这样做。你想在这里聚会吗? – 2013-05-14 07:05:06

+0

我的意思是我想仅比较列MAILADR并删除所有重复的行,即使其他行在列ID和BENUTZERGRP中具有不同的值。 – stare 2013-05-14 08:01:43

回答

0

我结束了使用GroupBy操作:

dataObject = dataObject.GroupBy(Function(c) c.MAILADR).Select(Function(group) group.First())