当前位置: 代码迷 >> Sql Server >> ,多表查询
  详细解决方案

,多表查询

热度:94   发布时间:2016-04-24 09:38:30.0
求助,多表查询!
假设一个连锁店的销售信息库,有三个表:
1.SaleInfo--销售业绩表,包含字段:SalerID(员工编号),Money(销售额),Month(月份)
2.Store--商店表,包含字段:StoreID(商店编号),SotreName(商店名称)
3.Peple--员工表,包含字段:EmpID(员工编号),Name(员工姓名),DeptID(所属商店编号)

请问以下SQL语句怎么写:
1.查询某月份下各商店销售额总额,输出格式:

商店名称   人数    本店销售总额
---------------------------------

2.查询某商店某月份的平均销售额,输出格式:

商店名称   人数    本店平均销售额
----------------------------------

谢谢!

------解决思路----------------------
--1.查询某月份下各商店销售额总额,输出格式:
SELECT T3.SotreName AS[商店名称]
,COUNT(DISTINCT T1.SalerID)AS[人数]
,SUM(T1.Money)AS[本店销售总额]
FROM SaleInfo T1
JOIN Peple T2 ON T1.SalerID=T2.EmpID
JOIN Store T3 ON T2.DeptID=T3.StoreID
GROUP BY T3.SotreName

--2.查询某商店某月份的平均销售额,输出格式:
SELECT T3.SotreName AS[商店名称]
,COUNT(DISTINCT T1.SalerID)AS[人数]
,SUM(T1.Money)/COUNT(DISTINCT T1.SalerID)AS[本店销售总额]
FROM SaleInfo T1
JOIN Peple T2 ON T1.SalerID=T2.EmpID
JOIN Store T3 ON T2.DeptID=T3.StoreID
GROUP BY T3.SotreName

------解决思路----------------------
如果是多对多的话 需要分别在某个表聚合以后再JOIN比较准确。
  相关解决方案