每个月的平均客户支出和每个月的订购商品数

时间:2019-04-21 15:34:34

标签: java mysql sql jdbc

我有4张桌子:

CUSTOMER (idCustomer,name,phone,email, markdown)
ORDER (idOrder,day,Customer_idCustomer)
ORDERITEM (idOrderItem, quantity, Order_idOrder, Product_idProduct)
PRODUCT (idProduct,name,price,description).

查询内容是什么

  1. 每个月(每个客户)的平均客户支出

  2. 已订购商品数?

我已经在该数据库上写了一些查询。
由于我是针对使用JDBC的Java应用程序执行的,因此也许可以拆分这两个查询并分别计算平均值,但是最好的方法是什么?有没有办法仅用两个SQL查询来做到这一点?

谢谢您的帮助。

我用于降价的查询:

String sql = "SELECT c.markdown, SUM(oi.quantity * p.price) 
FROM orderitem oi, `order` o, product p, customer c 
WHERE c.idCustomer = o.Customer_idCustomer 
AND oi.Order_idOrder=o.idOrder 
AND oi.Product_idProduct=p.idProduct 
AND o.idOrder=" + idOrderValue + " 
GROUP BY oi.Order_idOrder";

Look here for database design (ERD)

1 个答案:

答案 0 :(得分:1)

您要使用JOIN个聚合查询。使用正确的JOIN语法!请勿在{{1​​}}子句中使用逗号:

FROM