根据NewQger(Q哥)兄的,那SQL就变成下面这样了。但是还是不对! SELECT a.*, b.*,c.* FROM (SELECT BeerName AS 啤酒名称, SUM(OnDayIn1) AS 本月入库瓶, SUM(OnDayIn2) AS 本月入库毫升, SUM(OnDaySale1) AS 本月销售瓶, SUM(OnDaySale2) AS 本月销售毫升, SUM(Largess1) AS 本月赠酒瓶, SUM(Largess2) AS 本月赠酒毫升, SUM(Loos1) AS 本月报损瓶, SUM(Loos2) AS 本月报损毫升 FROM dbo.DayReports WHERE (YEAR(DateTime) = '2005') AND (MONTH(DateTime) = '3') GROUP BY BeerName) a INNER JOIN (SELECT BeerName AS 啤酒名称, SUM(OnDayIn1) AS 本年入库瓶, SUM(OnDayIn2) AS 本年入库毫升, SUM(OnDaySale1) AS 本年销售瓶, SUM(OnDaySale2) AS 本年销售毫升, SUM(Largess1) AS 本年赠酒瓶, SUM(Largess2) AS 本年赠酒毫升, SUM(Loos1) AS 本年报损瓶, SUM(Loos2) AS 本年报损毫升 FROM dbo.DayReports WHERE (YEAR(DateTime) = '2005') GROUP BY BeerName) b ON a.啤酒名称 = b.啤酒名称 inner join (SELECT TypeName AS 啤酒名称,Stockpile AS 库存数 FROM BeerType GROUP BY TypeName) c
看看
抱歉说的不对,是b 表的inner join 前边直接跟 ON a.啤酒名称 = b.啤酒名称 语句
看看
SELECT a.*, b.*,c.*
FROM (SELECT BeerName AS 啤酒名称, SUM(OnDayIn1) AS 本月入库瓶, SUM(OnDayIn2)
AS 本月入库毫升, SUM(OnDaySale1) AS 本月销售瓶, SUM(OnDaySale2)
AS 本月销售毫升, SUM(Largess1) AS 本月赠酒瓶, SUM(Largess2)
AS 本月赠酒毫升, SUM(Loos1) AS 本月报损瓶, SUM(Loos2)
AS 本月报损毫升
FROM dbo.DayReports
WHERE (YEAR(DateTime) = '2005') AND (MONTH(DateTime) = '3')
GROUP BY BeerName) a INNER JOIN
(SELECT BeerName AS 啤酒名称, SUM(OnDayIn1) AS 本年入库瓶, SUM(OnDayIn2)
AS 本年入库毫升, SUM(OnDaySale1) AS 本年销售瓶, SUM(OnDaySale2)
AS 本年销售毫升, SUM(Largess1) AS 本年赠酒瓶, SUM(Largess2)
AS 本年赠酒毫升, SUM(Loos1) AS 本年报损瓶, SUM(Loos2)
AS 本年报损毫升
FROM dbo.DayReports
WHERE (YEAR(DateTime) = '2005')
GROUP BY BeerName) b ON a.啤酒名称 = b.啤酒名称
inner join
(SELECT TypeName AS 啤酒名称,Stockpile AS 库存数 FROM BeerType
GROUP BY TypeName) c