2016-11-09 15 views
1

私は2つのテーブルを持っており、合計を得る必要がありますa.TOTAL * b.QUANTITY2つの列を掛け合わせて内部結合で合計します

aA_IDTOTAL

bB_IDQUANTITY

これまでのところ私は書いた:

SELECT a.A_ID, a.TOTAL * b.QUANTITY as calculation 
FROM a INNER JOIN b ON 
a.A_ID = b.B_ID 

私は計算として...SUM(a.TOTAL * b.QUANTITY)を試みたが、それは動作しません。私はどんな助けにも感謝しています!

+1

あなたの計算がうまくいかない理由を説明するために、サンプルデータと望ましい結果を示してください。 –

+1

また、使用しているSQLのバージョンも教えてください。私は 'GROUP BY'なしで' SUM'を使うことは特定のデータベースでさえ許されないと考えています(MySQLは例外です)。 –

答えて

4

はこれを試してみてください:

SELECT A_ID, SUM(calculation) as mySum 
FROM (
    SELECT a.A_ID, a.TOTAL * b.QUANTITY as calculation 
    FROM a INNER JOIN b ON 
    a.A_ID = b.B_ID 
) q 
GROUP BY A_ID 
2

あなたはAのIDのグループ化をするつもりでした。もしそうなら、あなたの望む結果を得るかもしれません:

SELECT a.A_ID, 
     SUM(a.TOTAL * b.QUANTITY) AS calculation 
FROM a 
INNER JOIN b 
    ON a.A_ID = b.B_ID 
GROUP BY a.A_ID 
関連する問題