计数列名称以特定值开头

Count columnName startwith specific value

ldtData.Columns.IndexOf("1-")

如果我想 select columnName 从 '1-' , '2-' , '3-' .. '12-' 开始,这是否正确?

顺便问一下,我如何计算以 '1-''2-''3-' .. '12-' 开头的列?

上图显示 SQL 结果。 '1-' 代表 1 月,'2-' 代表 2 月。我应该用什么 key/method 来计算和区分 columnName。

我找到了解决方案。

Dim liTotal(ldtData.Columns.Count - 1) As Integer
Dim cnt1, cnt2, cnt3, cnt4, cnt5, cnt6, cnt7, cnt8, cnt9, cnt10, cnt11, cnt12 As Integer
'Count row by month to set as colspan
For col As Integer = 4 To ldtData.Columns.Count - 1
If ldtData.Columns(col).ColumnName.Substring(0, 1) = "1" Then
cnt1 = cnt1 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "2" Then
cnt2 = cnt2 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "3" Then
cnt3 = cnt3 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "4" Then
cnt4 = cnt4 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "5" Then
cnt5 = cnt5 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "6" Then
cnt6 = cnt6 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "7" Then
cnt7 = cnt7 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "8" Then
cnt8 = cnt8 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 1) = "9" Then
cnt9 = cnt9 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 2) = "10" Then
cnt10 = cnt10 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 2) = "11" Then
cnt11 = cnt11 + 1
ElseIf ldtData.Columns(col).ColumnName.Substring(0, 2) = "12" Then
cnt12 = cnt12 + 1
End If
Next

方法是我声明月份的所有计数 (cnt1,cnt2, ...)。然后,我对每个月进行循环和计数,如果数据找到“1”,那么它将在我的 table.

中算作 cnt1(Jan)