如何按相关记录的数量进行分组

时间:2017-09-14 23:38:36

标签: mysql

我有两张表invoicesproducts

invoices: store, 
products: id, invoice_id

我想要一个结果集,显示每个产品数量存在多少发票。

我的意思是,如果我在商店A上有2个发票,每个商品有3个产品,则会显示Store: A, Products qty: 3, Number of invoices (with three products): 2

另一个例子:

| store | products_qty |    count   |
|   A   |      1       |      10    | 
|   A   |      2       |      7     |
|   A   |      5       |      12    |
|   B   |      5       |      12    |

意思是,商店A有10个发票和1个产品。 7个产品,2个产品,12个产品......

我尝试过类似的事情:

SELECT store, count(p.id), count(i.id) FROM invoices i
LEFT JOIN products p ON (p.invoice_id = i.id)
GROUP BY price, count(i.id)

但是我的小组原因无效,则会显示Invalid use of group function

我该如何做到这一点?

1 个答案:

答案 0 :(得分:0)

我能够使用子查询,我想知道是否有可能没有它:

str