2016-12-09 15 views
0

2つの列に条件を設定し、最初の2つの列に基づいて3番目の列にレコードを集計する必要があるクエリを作成する必要があります。データベーステーブルからアイデアを得ることができます。 は、これは私がトップ財務顧問を見つけて、2回に表示されている例題nitishため、取引量の合計を集計する必要があり、ということで何をしたい、今私のデータベーステーブルpostgresqlの2つの列に同じ値を持つ2つの列のレコードを集計する方法

[![Advisers Table][1]][1] 

ですfinancial_adviserのテーブル1とtarget_adviserの別の行の別のテーブルでは、nityは単一行のfinancial_adviserとtarget_adviserの両方に入れることはできません。また、nitishのdeal_volumeの値はそれぞれ100と200です。そうnitishは、私は、PostgreSQLを使用していますので、このテーブルに対してクエリを実行した後、最終的な結果は

[![Financial Advisers table][1]][1] 

ようにする必要があり300

としてdeal_volumeと財務顧問である必要があり、この結果をフェッチしようとしました正しい結果を得ることはできませんでした。

+0

その結果、UNION ALL、GROUP BYを実行します。 – jarlh

+0

我々は単一のクエリでそれを行うことができますか? – Pankaj

答えて

0
SELECT advisors, 
    sum(deal_volume) AS dealVolume from 
     (SELECT target_adv AS "advisors", deal_volume 
      FROM ma_global 
      UNION ALL SELECT acq_adv AS "advisors", deal_volume 
     FROM ma_global) ma_global 
GROUP BY advisors 
ORDER BY dealVolume DESC 
+0

ちょうど言ったように。すごい仕事! – jarlh

+0

私に考えを与えるためにありがとう:) – Pankaj

関連する問題