>>SELECT tmp.mcat_code, tmp.mat_code, Mat.mcat_desc, Mat.mat_desc, SUM(tmp.qty) AS qty >>FROM (SELECT mcat_code, mat_code, SUM(qty) AS qty >> FROM mat_ob >> GROUP BY mcat_code, mat_code >> UNION >> SELECT mcat_code, mat_code, SUM(qty) AS qty >> FROM Purchase >> GROUP BY mcat_code, mat_code >> UNION >> SELECT mcat_code, mat_code, SUM((con_qty + wst_qty) * - 1) AS qty >> FROM Production >> GROUP BY mcat_code, mat_code ) AS tmp INNER JOIN >> Mat ON Mat.mcat_code + Mat.mat_code = tmp.mcat_code + tmp.mat_code >>GROUP BY tmp.mcat_code, tmp.mat_code, Mat.mcat_desc, Mat.mat_desc >>ORDER BY tmp.mcat_code, Mat.mat_desc >>>>