日期:2014-05-17  浏览次数:20397 次

如何组合多个表的统计结果?
表结构如下:

Factory 工厂
Fid,Name

Workshop 车间
Wid,Name,Fid

Device 设备
Did,Name,Wid

Material 材料
Mid,Name,Did

期望的查询结果:
车间总数  设备总数 材料总数
3              60           220

现想要统计某个工厂下有多少车间,多少设备,多少原材料;
并按照上述格式返回,SQL语句应当怎么写啊?

SQL Couny

------解决方案--------------------
SELECT  fid ,
        COUNT(w.wid) 车间总数 ,
        COUNT(d.did) 设备总数 ,
        COUNT(m.mdi) 材料总数
FROM    Factory F
        INNER JOIN Workshop W ON f.Fid = w.Fid
        INNER JOIN Device D ON w.wid = d.wid
        INNER JOIN Material m ON d.did = m.did
GROUP BY fid