我正在从远程数据库读取一组行,从本地数据库读取一组类似的行,然后使用RemoveAll删除本地已经存在的远程行。。。
remote_events = (From a In remote.Events
Where ...etc...).ToList
local_events = (From a In local.Events
Where ...etc...).ToList
remote_events.RemoveAll(Function (ByVal event_row As Remote_Event)
(From a In local_events Where a.Identifier = event_row.Identifier).Count > 0)
但这对我来说似乎不对。当我真正需要做的只是检查是否存在匹配项时,我认为我不应该计算事物。我尝试了IsDBNull
和IsNot
的各种用法,但得到了废话。我不能使用。除了
(如这里建议的),因为列表元素不是同一类型。
有更好的方法吗?
我试图在没有visual studio的情况下实现这一点,所以我不确定这是否可行,但我想如果您试图做的是比较标识符
:
Remote_Events = (From r_evt In Remote_Events
Where Not ((From l_evt In Local_Events Select l_evt.Identifier).Contains(r_evt.Identifier))
Select r_evt).ToList
我希望这能有所帮助,至少能让你朝着正确的方向前进。
一种方法是这样的:
remote_events.RemoveAll(Function(e) local_events.Exists(Function(f) f.Identifier = e.Identifier))
问题内容: 假设我有两个列表,l1和l2。我要执行l1 - l2,返回l1not中的所有元素l2。 我可以想到一个幼稚的循环方法来执行此操作,但这实际上效率很低。什么是Python高效的方法? 例如,如果我有,应返回 问题答案: Python具有称为List Comprehensions的语言功能,非常适合使这种事情变得非常容易。以下语句完全满足你的要求,并将结果存储在l3: l3将包含。
问题内容: 包含(和)中也存在的两个元素。 有没有一种干净的方法来确保其中不包含这些元素或其中可能已经存在的任何其他重叠元素? 问题答案: 这将使您只包含。
问题内容: 我试图从两个文件中读取并将它们存储在两个单独的arraylist中。文件由单词组成,这些单词要么单独一行,要么多个单词之间用逗号分隔。我用以下代码读取每个文件(不完整): 我现在需要读入两个文件,并从第一个文件中删除所有单词,该单词也存在于第二个文件中(文件中有一些重复的单词)。我已经尝试过for- loops和其他类似的东西,但是没有任何效果,因此将不胜感激! 额外的问题:我还需要找
问题内容: 我有表,我想将它做成。我该怎么办? 问题答案: Python清单 list.pop(索引) 删除列表[索引] 这些都将修改您的原始列表。 其他人建议使用切片: 复制清单 可以返回一个子集 另外,如果要执行许多pop(0),则应查看collections.deque 从列表的左端提供更高的性能
问题内容: 我有两个清单说 现在,我想找出List2中是否存在List1的所有元素。在这种情况下,就全部存在。我不能使用子集函数,因为我可以在列表中重复元素。我可以使用for循环来计算List1中每个项目的出现次数,并查看它是否小于或等于List2中的出现次数。有一个更好的方法吗? 谢谢。 问题答案: 当出现次数无关紧要时,您仍可以通过动态创建集合来使用子集功能: 如果需要检查每个元素在第二个列表
问题内容: 如何使用JOIN从一个表中选择所有列,从另一个表中仅选择一些列?在MySQL中。 问题答案: 只需使用表名: 这将选择所有列和列和从。