C# Winform DataTable 怎么过滤两列不重复
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# Winform DataTable 怎么过滤两列不重复相关的知识,希望对你有一定的参考价值。
如题
我的表如下
列a 列b 列c
1 2 3
2 2 3
1 2 6
我想把列a和列b同时重复的1和2过滤
请问熟悉的朋友怎么写sql或者怎么操作tab了处理?
麻烦两个方法都说明下
请问熟悉的朋友怎么写sql
或者怎么操作table处理? 比如转dataview后怎么处理处理
麻烦两个方法都说明下
----我想要的过滤结果如下
列a 列b 列c
1 2 3
2 2 3
楼上的复杂了 你这个问题非常简单,建议使用分组,这样速度效率都很快
列1,列2,MIN(列3) as 得到的列3
from 列
group by
列1,列2
报错:试图执行的查询中不包含作为聚合函数一部分的特定表达式 '列3'
----我的报错, 请问明白为什么吗?
我继续调试
代码如下:



报错:试图执行的查询中不包含作为聚合函数一部分的特定表达式 '列3'
那是因为你没有使用 MIN() 这个聚合函数
谢谢你的回答
我试过是了是缺少列
可是加了之后,也过滤不出结果
等下截图你看
你这样吧,加我qq 971931543
追问谢谢, 一楼的答案可行.
参考技术A 那最后那个6岂不是就丢了?追问谢谢回复我的问题
6属于第三行, 需要过滤掉的
我想将distinct应用到列a和列b
或者其他达到这个效果的方式
我也不精通,不过帮你提了个问题。
http://zhidao.baidu.com/question/1541236702574993827.html
谢谢你帮忙, 等答案
我自己也调试下
第一个答案是可以的,我试过了。
SELECT *FROM TDist W
WHERE ID=(SELECT MIN(ID) FROM TDist N WHERE N.a=W.a AND N.b=W.b)追问
谢谢你带来的答案
我在winform 用sql操作excel 报错: 子查询最多只能返回一个查询
还有就是我的excel表没有唯一的ID
可能有多行一样的
但是我改用MIN(列c)
暂时还没想出办法
我继续调试
再次谢谢
excel哪里能支持这么复杂的sql?还有,你的提问根本没提到excel,既然已经到了datatable,直接遍历计数筛选也可以的。
追问调试了一天
你的这个答案在excel也是可以的
c# winform从数据库里面取出数据放到datatable里
从数据库里面取出数据。放到datatable里,然后把datatable分成2行2列,放到txt中,循环datatable进行排版。
新手寻求帮助,有意者留下意见和代码,谢谢~!
先谢谢的解答。是不是需要把datatable的数据放到dataset里面在写入txt里面吗??? 就是吧数据写入txt里面~!循环排版~!
如果要用txt输出,那直接循环就可以啊 参考技术B 你的意思是问如何将DataTable的数据导出Txt文件??
问题也不明确,
我不知道你的DataTable究竟有多少列,如果>2列?如果>2行呢??? 参考技术C SqlConnection sqlconn = new SqlConnection(connString);
SqlDataAdapter sqladp = new SqlDataAdapter(sql, sqlconn);DataSet ds = new DataSet();sqladp.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)Console.WriteLine(dr[0].ToString()+" "+dr[1].ToString()); 参考技术D for(int i=0;i<2,i++)
DataRow _dr=datatable.Rows[i];
txt.Text+=_dr[0].ToString()+"\t"+_dr[1].ToString()+"\n";
本回答被提问者采纳
以上是关于C# Winform DataTable 怎么过滤两列不重复的主要内容,如果未能解决你的问题,请参考以下文章
c# winform从数据库里面取出数据放到datatable里
C# Winform reportViewer报表,动态表头能做么?