首页 > 解决方案 > 从一个表计算 SUM 并显示另一个表的列

问题描述

我有 2 个表,Employee 和 Transaction

交易

时间标识 身份证 车牌号 身份证 t日期 挑个日子 归期 Amount_Due

员工

身份证 名称 姓名 工作 经理 雇用

我需要计算佣金 (2.5%) 并将其与 fName 和 lName 一起显示。

我已经计算了佣金,我认为我已经正确地完成了连接,但不能完全弄清楚如何添加 SELECT 以显示其他两列。

SELECT t.Amount_Due
    , SUM(t.Amount_Due*0.025) AS Commission
FROM [Transaction] t
JOIN Employee e ON t.eID = e.eID
GROUP BY t.Amount_Due

标签: sqlsql-server

解决方案


您按错误的列进行分组,并且尝试同时选择Amount_Due和聚合它:

SELECT e.fName
    , e.lName,
    , SUM(t.Amount_Due * 0.025) AS Commission
    FROM [Transaction] t
    JOIN Employee e 
      ON t.eID = e.eID
    GROUP BY e.ID, e.fName, e.lName;

推荐阅读