总和2表得到循环sql

时间:2018-03-17 12:10:43

标签: mysql sql

SELECT brg_laku.id_brg, SUM( brg_laku.dibeli ) AS sold, SUM( stok_brg.stok ) AS stock
FROM brg_laku, stok_brg
WHERE stok_brg.id_brg = brg_laku.id_brg
GROUP BY stok_brg.id_brg, brg_laku.id_brg 

这是我卖的表:

id_bl id_brg     dibeli harga_laku tgl        jam 
   10 BRG-000001      2      30000 2018-03-16 10:48:35
   11 BRG-000001      1      35000 2018-03-16 10:48:38
   12 BRG-000003      5      30000 2018-03-16 10:48:41
   13 BRG-000003      4      35000 2018-03-16 10:47:13 

这是使用上述代码的视图:

this view from code above

这是我的桌子:

this my stok table

如何在SQL中正确地求和?

1 个答案:

答案 0 :(得分:1)

您应加入结果总和

SELECT brg_laku.id_brg, t.sum_stock
    , SUM( brg_laku.dibeli ) AS sold
 FROM brg_laku
 INNER JOIN (
  SELECT 
  stok_brg.id_brg ,
  SUM( stok_brg.stok ) sum_stok
  FROM stok_brg
 )   t on t. id_brg = brg_laku.id_brg 
 group by brg_laku, t.sum_stock