datatable里根据名称合并列值

问题描述

我现在有有一张datatable,这个表里的内容是动态增加的,datatable里有两个字段:名称,数量1312242536我想要实现的格式为:名称数量152936请问各位高手有啥好的方法和思路,请指教,完了,分数一定及时给您送上,谢谢!~

解决方案

解决方案二:
在添加一条记录的时候,先判断这条记录的名称是否存在。若已存在就将数量加上,若不存在,就加上该条记录
解决方案三:
SQL语句也可以实现吧,select名称,sum(数量)from表groupby名称
解决方案四:
1,对名称排序后,循环求和2,对于dataTable类,自己写个groupby函数3,用存储过程,将数据导入临时表中,再用SQL(groupby)取出...........
解决方案五:
3楼的大哥用循环求和是可以弄出来的,对于datatable类的话,这个groupby函数如何写呢?
解决方案六:
引用4楼Delphi_jpy的回复:

3楼的大哥用循环求和是可以弄出来的,对于datatable类的话,这个groupby函数如何写呢?

将你得循环求和使用的方法通用化
解决方案七:
动态增加的是吧,那么可以考虑重写一下DataTable的ADDRow事件(反正类似的名字),同样还有Update的激发的事件。这两个事件会在table数据发生变化时激活,里面可以判断临近两条数据的值,然后处理下就好了。
解决方案八:
for(inti=0;i<dt.Rows.Count;i++){if(i>0&&dt.Rows[i]["No"].ToString()==dt.Rows[i-1]["No"].ToString()){dt.Rows[i-1]["Value"]=Convert.ToInt32(dt.Rows[i-1]["Value"])+Convert.ToInt32(dt.Rows[i]["Value"]);dt.Rows.Remove(dt.Rows[i]);i=0;}}

时间: 2024-11-13 06:34:22

datatable里根据名称合并列值的相关文章

SQL语法集锦三:合并列值与分拆列值

本文转载http://www.cnblogs.com/lxblog/archive/2012/09/29/2708724.html   在SQL中分拆列值和合并列值老生常谈了,从网上搜刮了一下并记录下来,以便不时之需 :) 什么叫分拆列值和合并列值呢?就只是这样的,比如有如下表A结构及数据: Id Data 1 aa,bb 2 aaa,bbb,ccc 将该表A的Data字段数据根据 "," 进行分拆得到如下表B Id Data 1 aa 1 bb 2 aaa 2 bbb 2 ccc 这

【交流】SQL 2005溢用之:合并列值

问题描述: 无论是在sql 2000, 还是在 sql 2005 中,都没有提供字符串的聚合函数, 所以, 当我们在处理下列要求时,会比较麻烦:   有表tb, 如下: id    value ----- ------ 1     aa 1     bb 2     aaa 2     bbb 2     ccc   需要得到结果: id     values ------ ----------- 1      aa,bb 2      aaa,bbb,ccc   即, group by id,

解析SQL Server 2005 溢用之:合并列值

很多人可能发现,无论是在sql 2000, 还是在 sql 2005 中,都没有提供字符串的聚合函数, 所以, 当我们在处理下列要求时,会比较麻烦, 但在 SQL Server 2005中, 这种情况得到了改善, 我们可以轻松地完成这项处理. 问题描述:无论是在sql 2000, 还是在 sql 2005 中,都没有提供字符串的聚合函数, 所以, 当我们在处理下列要求时,会比较麻烦:有表tb, 如下:id value----- ------1 aa1 bb2 aaa2 bbb2 ccc需要得到结

sql-如何把SQL里的true和flash值转换成是和否显示在网页中?

问题描述 如何把SQL里的true和flash值转换成是和否显示在网页中? 如图,应该写什么?在哪写?求大神指教! 解决方案 标题打错了.是true和false~ 解决方案二: 在页面写啊,判断那个值如果是true就 是 false就否 解决方案三: 直接判断啊 if(flag==true){ ... }else{ ... } 解决方案四: 同上 或者在后台处理 好了返回给前台也一样 解决方案五: 直接写个判断,true就该某个位置的text为是,反之为否 解决方案六: SQL语句中试试用ToC

C# 将DataTable里的数据导出到excel的代码,出了个问题谁能帮我

问题描述 publicclassImportExportToExcel{privateSystem.Windows.Forms.OpenFileDialogopenFileDlg=newSystem.Windows.Forms.OpenFileDialog();privateSystem.Windows.Forms.SaveFileDialogsaveFileDlg=newSystem.Windows.Forms.SaveFileDialog();publicImportExportToExce

如何获取同一个form表单里的对象的value值呢

问题描述 如何获取同一个form表单里的对象的value值呢 <input type="hidden" id="district<%=i%>" name="district" > <script> document.getElementById("district"+i).value=document.getElementById("shuru"+i).value <

进制转换-java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制

问题描述 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制 java怎么把一个数组里面的16进制值转换成8进制,我想先把16进制转成2进制再转8进制,但是老是运行出错.大神们能不能给个小例子解释一下,谢谢 解决方案 http://blog.csdn.net/vanezuo/article/details/6556768 解决方案二: 使用函数啊,你找一下,Java有相应的函数能做到 解决方案三: 如果你的程序出错,你贴出你的程序才知道. 也可以参考我给你的

jsp中调用上一个网页中调用的js里面的input text的值

问题描述 jsp中调用上一个网页中调用的js里面的input text的值 套了一个时间选择的模板,想要获取开始时间和结束时间,但是这两个出现在调用的js里面,怎么获取 解决方案 将控件绑定id,js中有通过id设置控件内容的方法 解决方案二: 当前网页和上一个网页是什么关系?iframe还是window.open? iframe可以用parent或者document.getElementById('ifrID').contentWindow得到相互引用, window.open用opener或

求助各位大大,如何保存volley包里onresponse方法的返回值

问题描述 求助各位大大,如何保存volley包里onresponse方法的返回值 代码如下: Volley.newRequestQueue(getApplication()); RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext()); final HashMap<String,String> map = new HashMap<String,String>(); Request js =