我把现有的数据存放到两个DataTable表里(如下),表名:CarTable
Num CarID GroupID CarNum CarMotorman
1 1 1 京A3352 张三
2 3 1 京B4321 李四
3 4 3 京C7680 王五
4 5 1 京F3360 李六表名: GroupTable
Num GroupID GroupName
1 1 车辆一组
2 3 车辆三组我想把这些表里的数据按照车辆组来分类,在存到另外一个DataTable里。
我想格式如下:表名:NewTable
Num CarID GroupID GroupName CarNum CarMotorman
1 1 1 车辆一组 京A3352 张三
2 3 1 车辆一组 京B4321 李四
3 4 3 车辆三组 京C7680 王五
4 5 1 车辆一组 京F3360 李六如何做!请各位师哥明示。这个问题太折磨我了!
小妹在这里说一下这里不是数据库题,是用C#写的程序题!
我是一点思路都没有了,这怎么合并啊!谢谢各位师哥了!
Num CarID GroupID CarNum CarMotorman
1 1 1 京A3352 张三
2 3 1 京B4321 李四
3 4 3 京C7680 王五
4 5 1 京F3360 李六表名: GroupTable
Num GroupID GroupName
1 1 车辆一组
2 3 车辆三组我想把这些表里的数据按照车辆组来分类,在存到另外一个DataTable里。
我想格式如下:表名:NewTable
Num CarID GroupID GroupName CarNum CarMotorman
1 1 1 车辆一组 京A3352 张三
2 3 1 车辆一组 京B4321 李四
3 4 3 车辆三组 京C7680 王五
4 5 1 车辆一组 京F3360 李六如何做!请各位师哥明示。这个问题太折磨我了!
小妹在这里说一下这里不是数据库题,是用C#写的程序题!
我是一点思路都没有了,这怎么合并啊!谢谢各位师哥了!
但要程序内存中的话 就需要导表了
重新声明DataTable 然后向里面一条一条添加值
一条一条的查找 每一条记录
插入第3个表
//--关键是给DataTable添加键值PrimaryKey.
//--在此例中"ID"应是关键字了.你的就是GroupID
DataTable dt1 = new DataTable();
dt1.Columns.Add("ID", typeof(int));
dt1.Columns.Add("Name", typeof(string));
dt1.PrimaryKey = new DataColumn[] { dt1.Columns[0]};
dt1.Rows.Add(1, "Age");
dt1.Rows.Add(2, "Apple");
dt1.Rows.Add(3, "Orange");DataTable dt2 = new DataTable();
dt2.Columns.Add("ID", typeof(int));
dt2.Columns.Add("Price", typeof(decimal));
dt2.PrimaryKey = new DataColumn[] { dt2.Columns[0] };
dt2.Rows.Add(1, 10);
dt2.Rows.Add(2, 6);
dt2.Rows.Add(3, 7);DataTable dt3 = dt1.Copy();
dt3.Merge(dt2);
from a
left join b
on ...
{
//和班组里原有的人员进行比较,如果存在则不让增加,以免重复
if (gvBranchPersonnel.Rows[index].Cells[0].Value.ToString() == this._da.Rows[jj][0].ToString())
{
//如果有相同的则跳出这个循环
jj = _da.Rows.Count;
//bool变量为真
bf = true;
} }
//根据bool变量进行判断,如果为假则说明没有相同的,可以增加
if (bf == false)
{
//加到临时存放选中人员的DT里
DataRow row = _dtBranch.NewRow();
row["ID"] = gvBranchPersonnel.Rows[index].Cells[0].Value.ToString();
row["name"] = gvBranchPersonnel.Rows[index].Cells[1].Value.ToString();
row["sex"] = gvBranchPersonnel.Rows[index].Cells[2].Value.ToString();
row["age"] = gvBranchPersonnel.Rows[index].Cells[3].Value.ToString();
row["groupID"] = gvBranchPersonnel.Rows[index].Cells[4].Value.ToString();
row["branchID"] = gvBranchPersonnel.Rows[index].Cells[5].Value.ToString();
_dtBranch.Rows.Add(row); //加到存放班组人员信息的DT里
DataRow row1 = _da.NewRow();
row1["ID"] = gvBranchPersonnel.Rows[index].Cells[0].Value.ToString();
row1["name"] = gvBranchPersonnel.Rows[index].Cells[1].Value.ToString();
row1["sex"] = gvBranchPersonnel.Rows[index].Cells[2].Value.ToString();
row1["age"] = gvBranchPersonnel.Rows[index].Cells[3].Value.ToString();
row1["groupID"] = gvBranchPersonnel.Rows[index].Cells[4].Value.ToString();
row1["branchID"] = gvBranchPersonnel.Rows[index].Cells[5].Value.ToString();
_da.Rows.Add(row1);
}
}