如何获得每个类别Laravel的项目总销售额

时间:2017-09-30 21:18:32

标签: php mysql laravel

我试着弄清楚如何计算每类商品的总销售额。

user表:

malloc()

items表:

+---------+--------------+----------------+
+ id      +  item_name   +  item_category +
+---------+--------------+----------------+
+ 1       + Yeezy Boost  +  2             +
+ 2       + Nike Blabla  +  1             +
+ 3       + Bata blabla  +  8             +
+ 4       + Vans blabla  +  3             +

categories表:

+---------+---------------+----------------------+
+ id      + category_name + category_description +
+---------+---------------+----------------------
+ 2       + Adidas        + Adidas category blab +
+ 1       + Nike          + Nike category blabla +
+ 8       + Bata          + Bata categor blabla  +
+ 3       + Vans          + Vans catyegory blaba +

orders表:

+--------+------------+-------------+-----------+
+ id     + order_date + customer_id + status    +
+--------+------------+-------------+-----------+
+ 1      + 2017-09-12 + 98          + shipped   +
+ 2      + 2017-08-22 + 87          + paid      +
+ 3      + 2017-07-31 + 33          + unpaid    +
+ 4      + 2017-09-14 + 12          + delivered +
+ 5      + 2016-09-22 + 90          + paid      +

好吧,我把每个订单都放到order_Details表&订单详细信息发送到+-----+---------+-----------+ + id + item_id + orders_id + +-----+---------+-----------+ + 1 + 3 + 3 + + 2 + 4 + 3 + + 3 + 4 + 3 + + 4 + 1 + 2 + + 5 + 2 + 2 + + 6 + 4 + 2 + + 7 + 3 + 2 + + 8 + 3 + 2 + + 9 + 1 + 5 + + 10 + 1 + 5 + 表格,例如,如果客户在orders时使用order_details购买该商品3 items,那么这会将id 1插入Yeezy Boost每个项目,我想要的是如何获得每个类别销售的商品数量(从3 records表中获取),因此在上面的示例表中,如果我尝试获得类别为2的商品(阿迪达斯)这将返回3项。如何完成这项工作,我使用的是Laravel 5.4我会很感激它以获得任何帮助!谢谢!

1 个答案:

答案 0 :(得分:0)

我认为这个sql脚本可以帮助您计算出订单表中的总项目数。

SELECT i.id, i.item_name, count(i.id) total_items_saled   
FROM orders AS o
INNER JOIN order_details ON od.order_id = o.id
INNER JOIN items AS i ON i.id = od.item_id
INNER JOIN categories AS c ON c.id = i.item_category
GROUP BY c.id, i.id
WHERE o.status like 'paid'