0

誰もが何らかのレベルにいます。私は在庫があります。mysql を初めて使用するので、助けが必要です。

ストアに注文されたマテリアル (建物) の合計と、ストアから削除されたマテリアルの合計を取得しようとしているので、ストアに残っているマテリアルの合計を取得できますが、3 番目のテーブルに参加した後に結果が重複しました。

ここに私のテーブルがあります:

表: 製品

serial name <br>

13  Windows<br><br>
14  Doors<br><br>
15  Ceramic Tiles<br><br>
16  Granite<br><br>

表: order_detail

orderid productid quantity<br>

29  14  170<br><br>
30  15  2000<br><br>
32  15  200<br><br>
31  16  80<br><br>
17  1200    600<br><br>

表:マットリクエスト

id  matid   matname mquantity<br>
1   15  Ceramic Tiles   300<br><br>
2   15  Ceramic Tiles   300<br><br>

これが私のコードです:

$query=mysql_query("SELECT a.productid, sum(a.quantity), b.serial, b.name, sum(mquantity) 
      FROM order_detail a 
      left join products b on a.productid = b.serial 
      left join matrequest c on b.serial = c.matid group by b.name")or die(mysql_error());

      while($row=mysql_fetch_assoc($query)){

結果 :

ID  Material Name   Order Quantity  Quantity Used   Quantity at Hand<br>
15  Ceramic Tiles   <b>4400 1200    3200</b>    <br><br>

14  Doors       170 0   170<br><br>

16  Granite     80  0   80<br><br>

17  Iron Rods   1200    0   1200<br><br>

と仮定します

ID  Material Name   Order Quantity  Quantity Used   Quantity at Hand<br>
15  Ceramic Tiles   <b>2200 600 1600</b>    <br><br>

14  Doors       170 0   170<br><br>

16  Granite     80  0   80<br><br>

17  Iron Rods   1200    0   1200 <br><br>

ご協力ありがとうございました

4

1 に答える 1