加入sql server中所需的查询

时间:2017-12-12 10:39:15

标签: sql-server performance tsql

我有4张如下表

enter image description here

我需要以下输出而不使用sql server中的任何子查询

PackageId  Price  ReceiptAmount
2000       1500   200
3000       800    190

请任何人帮助我。提前致谢

1 个答案:

答案 0 :(得分:1)

只需使用与

分组的简单连接即可
SELECT
    PK.PackageId,
    Price = SUM(ISNULL(RQ.Price,0)),
    ReceiptAmount = SUM(ISNULL(RP.ReceiptAmount,0))
        FROM Package PK
            LEFT JOIN RequestDetail RQ
                ON RQ.PackageId = PK.PackageId
            LEFT JOIN Receipts RP
                ON RP.PackageId = PK.PackageId
            GROUP BY PK.PackageId