mysql - 查找单笔订单支付最高金额的客户姓名

标签 mysql

这是我的关系架构

enter image description here

从所有销售订单中,我需要找到客户总支出最高的订单,并找到该客户的姓名。

我真的不知道如何解决这个问题。

找到总数最高的订单并不困难:

SELECT MAX(total)
FROM sales_order

但我不知道如何继续。我一直在努力做的是

要找出总数最高的订单 -> 找到 customer_id从中 -> 写下一个脚本,以便 sales_order.customer_id = customer_customer_id -> 显示name客户的。

但是我从第一步转到第二步时遇到了麻烦。我唯一能做的就是获得每个客户在单个订单中花费的最高金额:

SELECT MAX(total), customer_id
FROM sales_order
GROUP BY customer_id

这不是我要找的。

谢谢!!

最佳答案

我可能会在 where 子句中使用子查询来解决这个问题,如下所示:

SELECT c.Name
FROM sales_order o
INNER JOIN Customer c ON c.Customer_ID = o.Customer_ID
WHERE Total = (SELECT MAX(Total) FROM sales_order)

关于mysql - 查找单笔订单支付最高金额的客户姓名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39456574/

相关文章:

来自远程数据库的 MySQL Wordpress 产品定价更新

php - 使用 LIKE 语句执行时 PDO 的疯狂行为

mysql - 无法计算 mysql 查询中的错误

mysql - 使用中间表将一张表的值更新为相关表的求和值

php - 如何为在线约会网站设计用户表?

php - MySQL 获取行,其中不会只包含特定的字符串/单词

php - 不理解这种 isset 行为

php - SQLSTATE[HY093] : Invalid parameter number [string:Exception:private]

PHP 和 MYSQL AES_Encrypt 问题

c# - 使用不同的参数多次运行相同的查询