求一个 C# 操作 DataTable的简单算法 4 2 1分成三个Table? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 返回值 也不一定要返回N个DT ~ 函数为void类型也行 只要把数据分好组 随便赋值给3个DT 全局变量 甚至随便几个字符串也行 select 选修 from table group 选修得到选修的分类个数然后再select * from table where 选修='语文'select * from table where 选修='数学'select * from table where 选修='英语'... 把你要分组的所有选修种类先查出来放在一个种类数组里 把所有数据查出来放在一个总表里在建一个dataset 然后循环种类数组的 每一次循环新建一个datatable根据种类数组[i]的值在刚才那个总表里筛选 然后赋值给每次循环开始新建的datatable把datatable Add到dataset 兄弟,数据库里直接加条件查询出来不就行了,select * from tableName where 选修 = '语文'一次一个,思路清晰 datatable.select(选修=数学)好像是这样 忘记了 你试试吧 ~因为数据库很大 所以 不能用sql语句 一点一点查询,就是现在手里只有一个DataTable类型的数据集,然后需要做这么一个分组操作~听说操作DataTable好像有类似sql语句的筛选数据方式 所以来求~~~~ 我用过下面的方法,你调用3次就可以了 public bool u_ds_searchSQL_FromField_ret_Tbl(DataTable dt, string filedX, string searchStr, out DataTable resultTbl) { bool result = false; resultTbl = dt.Clone(); //SQLで、フィルドを検索 string strFormat = filedX + @"= '{0}'"; string sqlStr = String.Format(strFormat, searchStr); System.Data.DataRow[] DRReply = dt.Select(sqlStr); for (int i = 0; i < DRReply.Length; i++) { DataRow myDatarow = resultTbl.NewRow(); myDatarow.ItemArray = DRReply[i].ItemArray; resultTbl.Rows.Add(myDatarow); myDatarow = null; } result = (DRReply.Length == 0) ? false : true; return result; } DataRow [] rows1=DataTable.Select("选修="数学"");DataRow [] rows2=DataTable.Select("选修="语文"");你可以考虑用这种方式 一段无法修改的c#代码 再问个读取Xml问题 请教 把图片存储成文本的问题 为什么提示添加成功,数据库却为空,急急急,快下岗 请教:c#问题 求一正则表达式:将HTML字符串中所有的<table> ...</table>取出来 请教数据取值问题 C# 写局域网共享文件下载 断点续传该怎么写 一位大侠超厉害的 代码 (使用javascript 调用 C#后台过程). 但我有一点不明,请大家解释. 急!求救:当有多页时,为什么经过打印预览后,只打印最后一页? C#的treeview中添加结点并保存在数据库?
得到选修的分类个数然后再
select * from table where 选修='语文'
select * from table where 选修='数学'
select * from table where 选修='英语'
...
在建一个dataset
然后循环种类数组的 每一次循环新建一个datatable
根据种类数组[i]的值在刚才那个总表里筛选 然后赋值给每次循环开始新建的datatable
把datatable Add到dataset
一次一个,思路清晰
你调用3次就可以了 public bool u_ds_searchSQL_FromField_ret_Tbl(DataTable dt, string filedX, string searchStr, out DataTable resultTbl)
{
bool result = false;
resultTbl = dt.Clone();
//SQLで、フィルドを検索
string strFormat = filedX + @"= '{0}'";
string sqlStr = String.Format(strFormat, searchStr);
System.Data.DataRow[] DRReply = dt.Select(sqlStr); for (int i = 0; i < DRReply.Length; i++)
{
DataRow myDatarow = resultTbl.NewRow();
myDatarow.ItemArray = DRReply[i].ItemArray;
resultTbl.Rows.Add(myDatarow);
myDatarow = null;
} result = (DRReply.Length == 0) ? false : true; return result;
}
DataRow [] rows2=DataTable.Select("选修="语文"");
你可以考虑用这种方式