【发布时间】:2014-09-17 18:53:32
【问题描述】:
我有一个在数据库上运行存储过程的 vb.net 程序。构建数据集后,我正在扫描数据集中的表格以搜索特定信息。我使用 Select Case 语句来查找正确的信息。我遇到的问题是我无法弄清楚如何将我的结果显示为“总和”。我知道这是因为我使用的是“For Each”,但我不确定如何将“Result”分配给 ds.tables(0).Rows
代码:
For Each Result As DataRow In ds.Tables(0).Rows
Select Case Result("Report")
Case "TOTALS"
Select Case Result("Description")
Case "Coupons", "Coupons Tax-Free", "GC"
MsgBox(Result("netAmt"))
End Select
End Select
Next
按照编码,我收到 3 个消息框。第一个:
"15"
第二个:
"10"
第三个:
"5"
我希望看到找到的所有 3 个的总和:
"30"
如何检索这些的总和,请记住,在某些情况下,这 3 个中的一个可能会返回为 0
【问题讨论】:
-
既然是在 VB.NET 中做的,为什么不自己总结数字呢?
-
ds.Tables(0)来自哪里?如果是数据库,最好让DB引擎做聚合。 -
这是一个数据表。我最终将使用它来提取 10 条不同的信息。如果我让数据库引擎进行聚合,我将不得不使用相同的存储过程编写 10 个不同的查询。