数据库中两个表,数据量很大,如何筛选出两个表中某列中值不一样的?
如:
表A 表B
col1 col1
a a
b b
b d
c c我用了两个foreach
foreach(datarow dra in 表A.Rows)
{
foreach(datarow drb in 表B.Rows)
{
if(dra["col1"].tostring()!=drb[col2].tostring())
{
把他提出来
}
}
}
问题是数据量太大了,在asp.net中运行的时间太久了,自动中断了。
不知道该怎么编了,比较笨。谢谢。
如:
表A 表B
col1 col1
a a
b b
b d
c c我用了两个foreach
foreach(datarow dra in 表A.Rows)
{
foreach(datarow drb in 表B.Rows)
{
if(dra["col1"].tostring()!=drb[col2].tostring())
{
把他提出来
}
}
}
问题是数据量太大了,在asp.net中运行的时间太久了,自动中断了。
不知道该怎么编了,比较笨。谢谢。
解决方案 »
- C# listview column问题
- C#内存搜索问题,为什么搜索要一个小时
- 递归生成树,各结点数据从数据库中预先读到一个表中,再生成树,显示太慢
- 如何给 这样的函数传递参数 Form1_Load(object sender, EventArgs e)
- 设置ACCESS相对路径
- 为什么image控件放置的图片,在自己的计算机上看的见,用其他计算机访问就看不见呢???
- 数据库操作时,用数据组件设计时写好参数好,还是在程序动态生成组件并自己写SQL好呀。
- XML 解析错误:未找到元素
- 求助,如何在C#.Net中获取主键是标识(自动增加列)的insert后的那行的主键值
- 如何在运行时动态改变字号的大小?在线等待。。。
- c#中socket的Send()方法一次能最多发送多少字节
- System.NullReferenceException 郁闷的问题 急等解决方法
select col1 from
(
select col1 from A
union
select col2 from B
) t
where col1 not in
(
select col1 from A
intersect--交集
select col1 from B
)
select * from @ta a where not exists (select 1 from @tb where col1=a.col1)
用SQL有索引的会快点