顾名思义,我正在尝试对数据表中的行进行分组。更详细地说,该表具有相同的行,除了一个字段(列)。基本上我要做的是将相同行的所有不同字段放入单个字段中,同时删除其他行。
这是我目前使用的语法
Dim i As Integer
Dim j As Integer
For i = 0 To (ds.Tables(0).Rows.Count() - 1) Step 1
If (i < ds.Tables(0).Rows.Count()) Then
roleHtml = "<table><tr><td>" + ds.Tables(0).Rows(i).Item("roleName") + "</td></tr>"
For j = (ds.Tables(0).Rows.Count() - 1) To 0 Step -1
If (ds.Tables(0).Rows(i).Item("UserName") = ds.Tables(0).Rows(j).Item("UserName")) And (ds.Tables(0).Rows(i).Item("roleName") IsNot ds.Tables(0).Rows(j).Item("roleName")) Then
roleHtml += "<tr><td>" + ds.Tables(0).Rows(j).Item("roleName") + "</td></tr>"
ds.Tables(0).Rows.Remove(ds.Tables(0).Rows(j))
i -= 1
End If
Next j
roleHtml += "</table>"
ds.Tables(0).Rows(i).Item("roleName") = roleHtml
End If
Next i
问题是当删除行时,他们的索引发生了变化,基本上该字段被扔到与它无关的另一行中。