我正在为学校做一个mySQL作业,但是我卡在了一个问题上。我对mySQL还很陌生。COUNT(o.customer_id)没有按照我的意愿工作。我想要它计算订单数量,但它却计算了所有项目。例如,客户1有2个订单,但它返回的是3,因为一个订单有两个项目。我有三个表格,一个是顾客,另一个是订单,再一个是每个订单上的每个项目。我在下面放了我的查询。任何帮助都将不胜感激。
SELECT email_address, COUNT(o.order_id) AS num_of_orders,
SUM(((item_price - discount_amount) * quantity)) AS total
FROM customers c JOIN orders o
ON c.customer_id = o.customer_id
JOIN order_items ot
ON o.order_id = ot.order_id
GROUP BY o.customer_id
HAVING num_of_orders > 1
ORDER BY total DESC;