你可以写成
SELECT c.类别,c.件数,c.重量,d.件数,d.重量
FROM (SELECT 类别,SUM(件数) 件数,SUM(重量) 重量,day(a.日期) 日期
FROM a WHERE .... GROUP BY 类别,day(日期)) AS C
INNER JOIN
(SELECT 类别,SUM(件数) 件数,SUM(重量) 重量,Month(a.日期) 日期
FROM a WHERE .... GROUP BY 类别,Month(日期)) AS d
ON c.类别=d.类别