2016-06-17 7 views
-1

私はこのような表を作りたいと思いますが、私は自分の問題を解決する方法や買い手と全体の合計をどのようにカウントするかについてはわかりません。あなたは買い手の全体的な合計とコストを計算する方法

バイヤーを助けてくださいすることができた場合|部門|全体の総

スティーブ(3)| | IT | AWD | $ 70.00

ジョン(2)|メイント| RWD | $ 10.00

マークを調達(5)|エグゼクティブ| AWD | $ 700.00

が、私が行う方法を知っている唯一のことは、

スティーブを言うチャートを取得しています| IT | AWD | $ 25

スティーブ| IT | AWD | $ 25

スティーブ| IT | AWD | $ 25

ジョン| Maint | RWD | $ 7

ジョン|メインツ| RWD | $ 3

マーク|エグゼクティブ| AWD | $ 100

マーク|エグゼクティブ| AWD | $ 100

マーク|エグゼクティブ| AWD | $ 100

マーク|エグゼクティブ| AWD | $ 300

マーク|エグゼクティブ| AWD | $ 100

MY CODEは好きTHIS LOOKS:

SELECT 
    SSU.P_HEADER.BUYER, 
    SSU.P_HEADER.DEPT_ID, 
    SSU.P_HEADER.PROCURE_TYPE, 

    enter code here 

    (SSU.P_LINE.QUANTITY* SSU.P_LINE.COST) AS TOTAL 


FROM 
     SSU.P_HEADER INNER JOIN SSU.P_LINE ON SSU.P_HEADER.TRX = SSU.P_LINE.TRX 

WHERE 
     SSU.P_HEADER.PROCURE_TYPE= 'AWD' 
     OR SSU.P_HEADER.PROCURE_TYPE= 'REQ' 
    sum(buyer= total) 

ORDER BY BUYER DESC 

    enter code here 
+1

http://www.sensefulsolutions.com/2010/10/format-text-as-table.htmlを読んで、表を読みやすい形式にしてください。 \t [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [**スタート**] http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を向上させ、より良い回答を得る方法を学ぶことができます。 –

答えて

0

は、ここで私がするために使用されるメタデータとデータのですが(私は信じている)NOTE(あなたが探しているものあなたを与える:それはあなたを与えるされていない場合スタート):

create table buyers (buyer varchar2(100), department varchar2(100), procure varchar2(100), cost integer); 

insert into buyers values ('Steve', 'IT', 'AWD', 25); 
insert into buyers values ('Steve', 'IT', 'AWD', 25); 
insert into buyers values ('Steve', 'IT', 'AWD', 25); 
insert into buyers values ('John', 'Maint', 'RWD', 7); 
insert into buyers values ('John', 'Maint', 'RWD', 3); 
insert into buyers values ('Mark', 'Executive', 'AWD', 100); 
insert into buyers values ('Mark', 'Executive', 'AWD', 100); 
insert into buyers values ('Mark', 'Executive', 'AWD', 100); 
insert into buyers values ('Mark', 'Executive', 'AWD', 300); 
insert into buyers values ('Mark', 'Executive', 'AWD', 100); 

そして、ここでSELECTはあなたの結果を得るためにです:

select buyer, department, procure, sum(cost) as overall_total 
from buyers 
group by buyer, department, procure; 

そして、ここでは、あなたの結果は次のとおりです。

enter image description here

あなたは()でそれらの買い手カウント数をしたい場合は、インクルードはあなたが使用できるSELECTは、次のようになります。

select b.buyer || ' (' || a.buyer_cnt || ')' as buyer, department, procure, sum(cost) as overall_total 
from buyers b, 
    (select count(*) buyer_cnt, buyer 
     from buyers 
     group by buyer 
    ) a 
where b.buyer = a.buyer 
group by b.buyer || ' (' || a.buyer_cnt || ')', department, procure; 

そして、結果セットは次のようになります。

enter image description here

関連する問題