大致如下:
WITH ctePART_QUOTES AS
(SELECT qq.PART_ID,
COUNT(*) AS QUOTES_COUNT
SUM(qq.AMT * qq.QTY) AS QUOTES_AMT_TOTAL,
SUM(qq.QTY) as QUOTES_QTY_TOTAL
FROM QUOTES qq
GROUP BY qq.PART_ID),
ctePART_SALES AS
(SELECT ss.PART_ID,
COUNT(*) AS SALES_COUNT,
SUM(ss.AMT * ss.QTY) AS SALES_AMT_TOTAL,
SUM(ss.QTY) AS SALES_QTY_TOTAL,
COUNT(*) AS SALES_COUNT,
SUM(ss.QTY * ss.COST) AS COST_TOTAL
FROM SALES ss
GROUP BY ss.PART_ID)
SELECT p.NUMBER,
s.SALES_AMT_TOTAL,
s.SALES_QTY_TOTAL,
s.SALES_COUNT,
s.COST_TOTAL,
q.QUOTES_AMT_TOTAL,
q.QUOTES_QTY_TOTAL,
q.QUOTES_COUNT
FROM PARTS p
LEFT OUTER JOIN ctePART_QUOTES q
ON q.PART_ID = p.PART_ID
LEFT OUTER JOIN ctePART_SALES s
ON s.PART_ID = p.PART_ID
添加所有
HAVING
东西,你应该走了。
祝你好运。