Sql 使用多个表进行计算和联接

Sql 使用多个表进行计算和联接,sql,sql-server-2012,Sql,Sql Server 2012,我有一个销售点系统,我正试图编写一个SQL查询,以一种我可以通过投标查看检查总额以与现金流相一致的方式。需要将数据导出到Excel,以便我可以进行最终计算。不幸的是,该模式不是我的,无法更改。我遇到的一个问题是,在某些情况下,一张支票有多笔交易,涉及各种投标,因此我需要进行一些操作以获得正确的总额 模式和示例数据如下所示: Excel表格如下所示: 支票 税 付款 柔软的 数量 1. 0.35 5.35 现金 5.35 2. 1.40 21.40 签证 10.70 2. 国会议员 10.70 这

我有一个销售点系统,我正试图编写一个SQL查询,以一种我可以通过投标查看检查总额以与现金流相一致的方式。需要将数据导出到Excel,以便我可以进行最终计算。不幸的是,该模式不是我的,无法更改。我遇到的一个问题是,在某些情况下,一张支票有多笔交易,涉及各种投标,因此我需要进行一些操作以获得正确的总额

模式和示例数据如下所示:

Excel表格如下所示:

支票 税 付款 柔软的 数量 1. 0.35 5.35 现金 5.35 2. 1.40 21.40 签证 10.70 2. 国会议员 10.70
这回答了问题的原始版本(指一个表格)

如果您满足于一行中的所有值,只需使用聚合:

select count(distinct checkid),
       sum(tax),
       sum(payments),
       sum(case when tender = 'CASH' then amount else 0 end) as cash,
       sum(case when tender = 'VISA' then amount else 0 end) as visa,
       sum(case when tender = 'mc' then amount else 0 end) as mc
from t;

您好,Gordon,您可以找到我在加入SQL Fiddle链接时需要帮助的实际表。如果我不够清楚,我会道歉。谢谢