1.DataSet中某个列值的计算
Dim dt as Datatable=ds.tables("Product")
Dim sum as int32 = dt.Compute(" sum( 单价)", "单价>0")
每次只能对一个列使用Compute方法,除了Sum(),还可以用Avg()
Compute方法的第一个参数包含聚合表达式。第二个参数限制使用条件。其中条件可以是表中的任意列,与聚合表达式中的无关。如果没有条件,用Nothing即可。
2. 遍历DataSet
Dim ds as dataset
Dim dt as datatable
For Each dt In ds.Tables '每个表
For intRow=0 to dt.rows.count() -1 '每一行
For intColumn=0 to dt.Rows(intRow).ItemArray.Length - 1 '每一列
'操作
Next intColumn
Next intRow
Next dt
3.更新列数据
不能在上例中直接用dt.Columns("xx")="yy"的方式来赋值,因为前者是只读的。尽管是在循环内,但是并不能自动限定到特定的行。
只能用
dim dRow as DataRow
For intRow=0 to dt.Rows.count() -1
dRow=dt.rows(intRow)
dRow("xx")=yy
Next intRow