从MSSQL中的多个表中总计每日总计加上总计

时间:2017-04-26 16:14:39

标签: ms-access vb6

我对VB6中的MS Access SQL相对较新,并且正在寻找一个答案,我在这里看到一个几乎符合我需要的问题(在MSSQL中按类别总计每日总数)。但我仍然无法找到如何在我的代码中实现它,我很确定我错过了一些命令或命令。

这就是我得到的:

var id = $routeParams.id

这就是我需要的:

    Qry = "SELECT pv_S.Id, Agenda.Company, pv_S.Fecha, Products.Descripción, " _
        & "pv_S.Cant, pv_S.PV, pv_S.Pagado, pv_S.User " _
        & "FROM Products " _
        & "INNER JOIN (Agenda INNER JOIN pv_S " _
        & "ON Agenda.CustomerID = pv_S.CustomerID) " _
        & "ON Products.ProdId = pv_S.ProdId " _
        & "WHERE pv_S.Fecha BETWEEN #" & Format(FromDate, "MM/DD/YYYY") & "# " _
        & "AND #" & Format(ToDate, "MM/DD/YYYY") & "# " _
        & "AND pv_S.User  = '" & cboCombos(2).Text & "' " _
        & "ORDER BY Fecha"

我正在做的很可怕,在数据库中循环是疯狂的。我知道应该而且必须是一种简单的方法。

1 个答案:

答案 0 :(得分:0)

您说'按类别总计每日总数'。什么类别?您的输出示例显示了来自pv_S的3个字段,但没有来自议程和产品。

如果要查看所有3个表中的详细信息以及摘要计算,请构建Access报告。 RecordSource将是原始数据记录的查询。使用报告分组和排序设计功能。在您的'类别'的任何字段上添加组部分。将文本框放在组页脚中,并使用表达式=Sum([Cant])报告页脚。

将日期和用户过滤条件应用于报告。我从不使用动态参数化查询。我更喜欢使用VBA构建过滤条件,并在打开时应用于报告。查看Allen Browne Filter

如果您无法使用Access报告,您对报告使用了什么?为什么在Access后面使用VB6而不是VBA?

实现您显示的输出安排的仅查询方法可能涉及构建两个聚合查询,然后是原始数据记录集的UNION。