c# - 如何在不迭代的情况下从巨大的数据表中删除行?

标签 c# asp.net

我有一个可用的数据表,其中包含数千行。有一个名为 EmpID 的列,其中某些行包含“0”。我想从我当前的 DataTable 中删除它们,并想创建一个新的正确的 DataTable。我不能逐行检查它,因为它包含大量数据。给我一个克服这个问题的建议。

最佳答案

最好的方法是在源头过滤它(如果可能的话)——因此,如果您从数据库创建它,请使用 where 排除 sql 查询本身中的所有 0 值

从.net 2.0开始,ms在很大程度上加强了对datatable的过滤逻辑。因此,如果您使用数据 View (在数据表之上)并在其中添加 where 子句并在此字段上添加某种运行时索引,它将为您提供所需的结果而无需遍历所有记录

关于c# - 如何在不迭代的情况下从巨大的数据表中删除行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4828036/

相关文章:

c# - 在 C# 中模拟系统环境变量

c# - 在 .NET XmlDocument 中移动 "a child up"的最佳方法是什么?

c# - 像 Google (ASP) 一样在文本框下方的下拉列表中搜索结果

asp.net - ELMAH - 过滤 404 错误

c# - asp .net c# 中的 jquery 动画缩放功能

c# - datetime.parseexact 返回错误的月份

c# - 如果窗口设置为 "Automatic Login",则 GetLastInputInfo API 不起作用

c# - 解析 html 帮助程序

asp.net - 无法向我的 <asp :Label>? 添加样式

asp.net 使用管理员帐户运行程序