2013-12-17 17 views
0

如何團結舉例幾個相同的數據/數據複製下面分組通過查看Oracle中

IMAGE圖片:http://i.stack.imgur.com/L1cHC.jpg

而且這是我的查詢:

SELECT cl.client_group, 
     cl.NAME, 
     vw.CLASS, 
     vw.buscat, 
     vw.currency, 
     vw.sum_insured, 
     vw.client_premium, 
     vw.net_income, 
     vw.client 
    FROM vw_ans_pol_coingrpibs vw, client cl, client_grp cgrp 
WHERE (vw.CLIENT = cl.CLIENT(+)) 
    AND (cl.CLIENT_GROUP = cgrp.CLIENT_GROUP(+)) 
    AND vw.CLOSING_DATE BETWEEN TO_DATE('01/01/2007', 'DD/MM/YYYY') AND 
     TO_DATE('15/01/2007', 'DD/MM/YYYY') 
ORDER BY vw.CURRENCY, vw.CLIENT, vw.CLASS 

你能幫助我?

+3

到底是什麼問題了嗎? *你的查詢返回了什麼,它應該返回什麼(請不要只發布圖像鏈接 - 將示例數據添加到你的問題)? –

+0

您未使用cgrp表。缺少WHERE或HAVING條件? 請說明數據和結果。 –

回答

0

如果我得到你很好,你是大部分職業,你只需要GROUP BY,就大功告成了:

SELECT X.NAME, X.CLASS, 
     SUM(X.sum_insured) sum_insured, 
     SUM(X.client_premium) client_premium, 
     SUM(X.net_income) net_income 
from 
(
    SELECT cl.client_group, 
      cl.NAME, 
      vw.CLASS, 
      vw.buscat, 
      vw.currency, 
      vw.sum_insured, 
      vw.client_premium, 
      vw.net_income, 
      vw.client 
     FROM vw_ans_pol_coingrpibs vw, client cl, client_grp cgrp 
    WHERE (vw.CLIENT = cl.CLIENT(+)) 
     AND (cl.CLIENT_GROUP = cgrp.CLIENT_GROUP(+)) 
     AND vw.CLOSING_DATE BETWEEN TO_DATE('01/01/2007', 'DD/MM/YYYY') AND 
      TO_DATE('15/01/2007', 'DD/MM/YYYY') 
) X 
GROUP BY X.NAME, X.CLASS