作者:有激情才会实现梦想 | 来源:互联网 | 2023-05-17 12:10
C# WinForm:
System.Data.DataTable myTable=....;
这个DataTable中有5列,每列都有10000条左右的数据
A B C D E
2 3 4 5 6
1 4 5 6 9
2 3 8 6 7
..................
要求C#从这个System.Data.DataTable中查找出这个表中A、B、C三列中(整体)的最大值和最小值
对应上面给的几行数据,结果就是:
Max Min
8 1
请问该怎么查找出来?
不要用循环比较的方法,因为每列都1W行左右呢。 用尽量少的语句,能一条搞定出结果的最好,谢谢。
12 个解决方案
你那table数据从哪里来的呢。。
如果是数据库的话不是有 min() max()这些就行了吗?
回1楼:不是还有个9吗??
怎么最大的是8?
==================
是A、B、C三列的最值,题目中说了"查找出这个表中A、B、C三列中(整体)的最大值和最小值"
"整体"意思是将这三列看作一整体,而不是分别查每列的最值
----------------------------------------------------------------
回2楼:你那table数据从哪里来的呢。。
=====================================
table数据源是个XML文档,这里没有真正的数据库连接的,所以只能在System.Data.DataTable中处理
那你先看能不能每列拿出最大和最小,就只剩六个了,
然后再三列的六个来比较下了。。。
然后你比较后面获取的对象就可以了,获取最大值和最小值
呵呵 我原来就是用的5楼的方法 datatable.Compute()
现在我数据少,这个表只有5列还好,我以后还会有10列的呢
总不能都这样吧? 而且后面的比较还得写老长一段
有没有更好的方案