sql >> データベース >  >> RDS >> Oracle

2つのテーブルからいくつかの列の合計を取得する

    グループ化の前にテーブルを結合できます(ちなみに、これはOracle上にあります):

    SELECT t.month_ref, SUM(t.amount1), SUM(t.amount2)
      FROM (SELECT month_ref, amount1, amount2
              FROM T_FOO
             WHERE seller = XXX
             UNION ALL
            SELECT month_ref, amount1, amount2
              FROM T_BAR
             WHERE seller = XXX
             ) t
     GROUP BY t.month_ref
    

    テーブルをセラーフィールドと結合し、後でフィルタリングすることもできます(より高度なロジックが必要な場合):

     SELECT t.month_ref, SUM(t.amount1), SUM(t.amount2)
       FROM (SELECT month_ref, amount1, amount2, seller
               FROM T_FOO
              UNION ALL
             SELECT month_ref, amount1, amount2, seller
               FROM T_BAR) t
      where t.seller = XXX
      GROUP BY t.month_ref
    


    1. エンコーディング「WIN1252」のバイトシーケンス0x9dの文字には、エンコーディング「UTF8」に相当するものがありません。

    2. PostgreSQL-リレーション[テーブル]が存在しません

    3. 1つのテーブルから親名を持つカテゴリを選択します

    4. リレーショナルクエリと組み合わせたPostgresjsonbクエリのパフォーマンスの向上