-- 586. 订单最多的客户
-- 表: Orders
--
-- +-----------------+----------+
-- | Column Name | Type |
-- +-----------------+----------+
-- | order_number | int |
-- | customer_number | int |
-- +-----------------+----------+
-- Order_number是该表的主键。
-- 此表包含关于订单ID和客户ID的信息。
--
--
--
-- 编写一个SQL查询,为下了 最多订单 的客户查找 customer_number 。
--
-- 测试用例生成后, 恰好有一个客户 比任何其他客户下了更多的订单。
--
-- 查询结果格式如下所示。
--
--
--
-- 示例 1:
--
-- 输入:
-- Orders 表:
-- +--------------+-----------------+
-- | order_number | customer_number |
-- +--------------+-----------------+
-- | 1 | 1 |
-- | 2 | 2 |
-- | 3 | 3 |
-- | 4 | 3 |
-- +--------------+-----------------+
-- 输出:
-- +-----------------+
-- | customer_number |
-- +-----------------+
-- | 3 |
-- +-----------------+
-- 解释:
-- customer_number 为 '3' 的顾客有两个订单,比顾客 '1' 或者 '2' 都要多,因为他们只有一个订单。
-- 所以结果是该顾客的 customer_number ,也就是 3 。
--
--
--
-- 进阶: 如果有多位顾客订单数并列最多,你能找到他们所有的 customer_number 吗?
--
-- 来源:力扣(LeetCode)
-- 链接:https://leetcode.cn/problems/customer-placing-the-largest-number-of-orders
-- 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
-- DROP TABLE IF EXISTS Orders;
-- CREATE TABLE Orders (
-- order_number INT COMMENT '订单号',
-- customer_number INT COMMENT '客户编号',
-- PRIMARY KEY (`order_number`)
-- )
-- ENGINE=InnoDB
-- DEFAULT CHARSET=utf8mb4
-- COLLATE=utf8mb4_unicode_ci
-- COMMENT='订单表'
-- ;
-- INSERT INTO Orders
-- (order_number, customer_number)
-- VALUES
-- (1, 1)
-- ,(2, 2)
-- ,(3, 3)
-- ,(4, 3)
-- ;
SELECT
customer_number
FROM Orders
GROUP BY customer_number
ORDER BY COUNT(*) DESC
LIMIT 1
LETCODE_000586_订单最多的客户
最新推荐文章于 2025-07-31 19:50:49 发布