ListItems的Datagridview总和

时间:2019-04-28 19:57:05

标签: sql vb.net visual-studio-2017

我正在寻找一个SQL查询,该查询可以汇总来自datagrid视图的一些列表项。

ListItems = {a,b,c,d}

我在datagrid视图中有一个“ ItemsName”和“ ItemsValues”列,我想从datagrid视图中总结一些“ ItemsName”的值。我知道可以为每个列表项然后为每个datagrid视图行运行的迭代方法,但是我不想使用它,因为如果数据库中有大量数据,它可能会花费很少的时间。

我正在寻找类似的东西

选择总和(ItemValue) 从ItemTable 其中ItemName = ListItems

这里的Listitems是变量,它存储一些我需要求和的列表值,如上所示。

请指导。

2 个答案:

答案 0 :(得分:0)

如果您有数据表作为源,则可以使用类似的内容

$data = collect();

foreach($subs as $sub)
{
    $data[$email->email] = [
      'username' => mailName($email->email),
      'id' => $sub->id
    ];
}

$data->toJson(); // this line will give you the expected result

答案 1 :(得分:0)

您可以使用数据关系来实现此目标。

    Dim SourceDT As New DataTable With {.TableName = "Source"}
    Dim ChildDT As New DataTable
    ChildDT = SourceDT.Copy
    ChildDT.TableName = "Child"
    Dim Dset As New DataSet
    Dset.Tables.Add(SourceDT)
    Dset.Tables.Add(ChildDT)
    Dset.Relations.Add("SourceToChild",
                       Dset.Tables("Source").Columns("ItemsName"),
                       Dset.Tables("Child").Columns("ItemsName"), False)
    Dset.Tables("Source").Columns.Add(New DataColumn With {
                                      .ColumnName = "SUMofValues",
                                      .DataType = GetType(Double),
                                      .Expression = "SUM(Child(SourceToChild).ItemsValue)"})