mssql从sum中选择多个表

时间:2017-02-13 22:14:11

标签: select sum multiple-tables

使用MSSQL 2008R2。需要创建一个select以便稍后创建一个视图。有3张桌子。 Table Emply与表User一对一。 Table Emply具有一对多的表sales_lines。

表:Emply

id   Hourly_rate
1   12.50
2   19.00 

表:USER

ID   Name
1    BoB Smith
2    Mary Jones

表:Sales_Lines

ID   AMOUNT   DATE_SALE
1   10.00    01/12/2017
2    5.00    01/15/2017
1   15.00    01/12/2017
1   30.00    01/01/2017

输出应显示每个用户ID的每日总销售额

ID   Name       Total_Sales   Date
1    Bob Smith    25.00       01/12/2017
1    Bob Smith    30.00       01/01/2017
2    Mary Jones    5.00       01/15/2017 

1 个答案:

答案 0 :(得分:0)

您必须加入这两个表并在之后对它们进行分组。

SELECT s.ID, SUM(s.AMOUNT), s.DATE_SALE
FROM USER u LEFT OUTER JOIN Sales_Lines s
ON u.ID = s.ID
GROUP BY s.DATE_SALE, s.ID;

此查询将如下所示:
获取用户ID,每个用户组成的组中的金额和日期总和,以及由同一用户和相同日期分组的sales_line。