题解 | #确定最佳顾客的另一种方式(二)#
确定最佳顾客的另一种方式(二)
https://www.nowcoder.com/practice/b5766f970ae64ac7944f37f5b47107aa
SELECT a.cust_name, SUM(c.item_price*c.quantity) total_price FROM Customers a INNER JOIN Orders b ON a.cust_id = b.cust_id INNER JOIN OrderItems c ON b.order_num = c.order_num GROUP BY a.cust_name HAVING total_price >= 1000 ORDER BY total_price;
题解:
1.任务:查询用户名,总金额,来自不同的表
2.限制:总金额大于1000
思路:
1.从a表找到用户名,从c表计算总金额
2.使用自联结联结三个表,总金额需要计算,所以使用分组函数,最后因为是聚合函数,所以使用having过滤,最后排序