在mysql中获取表中相同id的字段总和

时间:2015-08-21 11:27:03

标签: mysql

我想得到相同doc_no的数量和价格的总和,表格如下

1)注册

  id name contact
  123 abc 123456789

2)bookingReg

   PkBkID FkRegID ac_no
   1       123     QT123 

3)产品

   PkPro FkBkID pro_name Qty price doc_no
    1     1     abc      2   150    1
    2     1     def      1   400    2
    3     1     ghi      5   500    3
    4     1     abc      2   150    1



SELECT ac_no, SUM(Qty) Qty, SUM(Price) Price,doc_no from Register,bookingReg,products where bookingReg.FkRegID=Register.id and
  bookingReg.PkBkID= products.FkBkID and (select distint doc_no from products)

2 个答案:

答案 0 :(得分:0)

像这样。

SELECT
  b.ac_no,
  SUM(p.Qty) Qty,
  SUM(p.price) Price,
  p.doc_no
FROM Registration r
INNER JOIN bookingReg b
  ON b.FkRegID=r.id
INNER JOIN products p
  ON p.FkBkID=b.PkBkID
GROUP BY p.doc_no;

SQLFiddle:http://sqlfiddle.com/#!9/70ed5/2

答案 1 :(得分:0)

您不需要任何其他表,只需要产品表并使用以下简单查询

  

通过doc_no从产品组中选择doc_no,sum(Qty),sum(price)   有doc_no = 1;