Dataset ds = dbc.pr1();
Dataset ds1 = dbc.oradataset();
using (StreamWriter sw = new StreamWriter(@"C:\222\get.txt", true))
{
int i2 = ds.Tables[0].Rows.Count;
int i3 = ds1.Tables[0].Rows.Count;
for(int i1=0;i1<i2;i1++)
{
b=true;
for (int i = 0; i <i3; i++)
{
if (ds.Tables[0].Rows[i1]["col003"].ToString().Trim() == ds1.Tables[0].Rows[i]["MOBILE_NO"].ToString().Trim())
{
b = false;
i = i3;
}
}
if(b)
sw.WriteLine(ds.Tables[0].Rows[i1]["col001"] + " " + ds.Tables[0].Rows[i1]["col002"] + " " + ds.Tables[0].Rows[i1]["col003"] + " " + ds1.Tables[0].Rows[i1]["col004"]);
}
------------代码如上,要把第一个dataset中不存在于第二个dataset中的数据找出来,这样比较的话要花费二十多分钟时间,请高手看下看怎么改使速度快点(注:不能一条SQL比较出来因为第一个dataset是SQL中读出来的,第二个是Oracle读出来的)
Dataset ds1 = dbc.oradataset();
using (StreamWriter sw = new StreamWriter(@"C:\222\get.txt", true))
{
int i2 = ds.Tables[0].Rows.Count;
int i3 = ds1.Tables[0].Rows.Count;
for(int i1=0;i1<i2;i1++)
{
b=true;
for (int i = 0; i <i3; i++)
{
if (ds.Tables[0].Rows[i1]["col003"].ToString().Trim() == ds1.Tables[0].Rows[i]["MOBILE_NO"].ToString().Trim())
{
b = false;
i = i3;
}
}
if(b)
sw.WriteLine(ds.Tables[0].Rows[i1]["col001"] + " " + ds.Tables[0].Rows[i1]["col002"] + " " + ds.Tables[0].Rows[i1]["col003"] + " " + ds1.Tables[0].Rows[i1]["col004"]);
}
------------代码如上,要把第一个dataset中不存在于第二个dataset中的数据找出来,这样比较的话要花费二十多分钟时间,请高手看下看怎么改使速度快点(注:不能一条SQL比较出来因为第一个dataset是SQL中读出来的,第二个是Oracle读出来的)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货