Dim SQL,s1,s2,s3 As String
Dim fsd As New List(of Double)
Dim t1 As Table =Tables("封面页") '注意更改表名称
Dim rs As List(of Row) = t1.GetCheckedRows()
Dim kms As List(of String) =DataTables("封面页").GetUniqueValues("科目 > ''","科目")
s1 = " Un ion All Sel ect 班级,'@' As 科目,学生姓名, @ As 成绩 Fr om {学生成绩库}"
If rs.Count >0 Then
For Each r1 As Row In rs
If fsd.Contains(r1("分数段")) = False Then
fsd.add(r1("分数段"))
End If
Next
fsd.sort
For Each s2 In kms
SQL+ = s1.replace("@",s2) '合成标准数据库([语文,数学,英语,化学,物理]多列
合并为[成绩]一列),方便统计!
Next
SQL =SQL.substring(11)
For n1 As Integer = 0 To fsd.count-1
s1 = ",1,0)) As " & fsd(n1) & iif(n1 =0,"分以下","分及以上")
Select Case n1
Case 0
s2 = ",Sum(iif(成绩 < " & fsd(n1)
Case fsd.count-1
s2 = ",Sum(iif(成绩 >= " & fsd(n1)
Case Else
s2 = ",Sum(iif(成绩 >= " & fsd(n1) & " and 成绩 < " & fsd(n1+1)
End Select
s3+ =s2 & s1
Next
s1 = "Select 班级, 科目,Max(成绩) As 最高分,Min(成绩) As 最低分,Roun d(Avg(成绩),1)
As 平均分" & s3
SQL =s1 & " Fr om(" & SQL & ") Gr oup b y 班级,科目"
Dim q As new QueryBuilder
q.C
q.TableName = "自定义分数阶统计"
q.SelectString = SQL
q.Build
MainTable = Tables("自定义分数阶统计")
End If