mssql从多个表中选择总和
问题描述:
使用MSSQL 2008R2。需要创建一个select来稍后创建一个视图。有3张桌子。 Table Emply与表User有一对一的关系。 Table Emply拥有一对多的表格sales_lines。mssql从多个表中选择总和
表: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
答
您将不得不加入两张表格,然后再进行分组。
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分组合并的金额和日期的总和。
Thanks Faegy - 运行时出现错误。 USER.ID在选择列表中无效,因为它不包含在聚合函数或GROUP BY 子句 – Ronin
中您可以使用我的编辑重试吗? – Faegy
谢谢Faegy,现在它工作正常。我现在需要扩展这个更多的表格,但这会让我开始。 – Ronin