C# 第一个DateTable(dt1),第二个DateTable(dt2),怎样删除dt2中(dt2与dt1的交集),求一个比较快的方法
答案:2 悬赏:20 手机版
解决时间 2021-03-05 13:09
- 提问者网友:了了无期
- 2021-03-04 13:15
C# 第一个DateTable(dt1),第二个DateTable(dt2),怎样删除dt2中(dt2与dt1的交集),求一个比较快的方法,谢谢!
最佳答案
- 五星知识达人网友:拾荒鲤
- 2021-03-04 13:26
大致类似这样吧,这个方法的前提是假设ID是判断是否交集的依据,且为int型,且只有一个ID条件,如果是有多个判断条件就能这样用了,只能循环遍历了,效率很低,如果是从数据库中查询出来的DATATABLE,还是建议在数据库中直接完成筛选,在内存中操作挺耗资源的
string str=null;
if(dt1!=null&&dt1.Rows.Count>0)
foreach(DataRow dr in dt1)
{
if(dr["id"]!=null)
{
str = dr["id"].ToString()+",";
}
}
str=str.TrimEnd(',');
dt3=dt2.Select("id not in ("+str+")" );
string str=null;
if(dt1!=null&&dt1.Rows.Count>0)
foreach(DataRow dr in dt1)
{
if(dr["id"]!=null)
{
str = dr["id"].ToString()+",";
}
}
str=str.TrimEnd(',');
dt3=dt2.Select("id not in ("+str+")" );
全部回答
- 1楼网友:深街酒徒
- 2021-03-04 14:38
你好!
建议方式 合并dt1与dt2 然后去除重复!!!
打字不易,采纳哦!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯