1

我在下面提供了两个 sql 表:

Worked_Days Table            Employee_Info Table
Employee_ID |      Dates     Employee_ID |  Rate  |  Office
------------------------     ------------------------------
          1 | 05/29/2013               1 |  44.95 |      AZ
          1 | 05/30/2013               2 |  32.63 |      AZ
          2 | 05/28/2013               3 |  36.52 |      VA
          3 | 05/30/2013
          3 | 05/31/2013  

我正在寻找一个 PostgreSQL 9.1 查询,该查询将获取所有 AZ 办公室员工并计算他们工作的每一天,并按各自的费率将它们相乘,并将整个办公室的相乘值相加。

AZ 办公室的预期结果是 122.53 = 2 天 * 44.95 + 1 * 32.63

我能做的最好的事情是以下这将计算给定办公室的所有工作天数,但我不知道如何将它乘以给定员工的费率。

SELECT COUNT(Dates) FROM Worked_Days LEFT JOIN Employee_Info ON Worked_Days.Employee_ID = Employee_Info.Employee_ID WHERE Employee_Info.Office = 'AZ';

任何帮助将不胜感激。谢谢,

4

1 回答 1

2

试试这个:

SELECT SUM(ei.Rate) FROM worked_days wd
JOIN employee_info ei ON wd.Employee_ID = ei.Employee_ID
WHERE ei.Office = 'AZ'

这将输出所需的数字:122.53

于 2013-10-13T06:49:45.637 回答