问题描述:
在表 orders 中找到订单数最多客户对应的 customer_number 。
数据保证订单数最多的顾客恰好只有一位。
表 orders 定义如下:
| Column | Type |
|-------------------|-----------|
| order_number (PK) | int |
| customer_number | int |
| order_date | date |
| required_date | date |
| shipped_date | date |
| status | char(15) |
| comment | char(200) |
样例输入
| order_number | customer_number | order_date | required_date | shipped_date | status | comment |
|--------------|-----------------|------------|---------------|--------------|--------|---------|
| 1 | 1 | 2017-04-09 | 2017-04-13 | 2017-04-12 | Closed | |
| 2 | 2 | 2017-04-15 | 2017-04-20 | 2017-04-18 | Closed | |
| 3 | 3 | 2017-04-16 | 2017-04-25 | 2017-04-20 | Closed | |
| 4 | 3 | 2017-04-18 | 2017-04-28 | 2017-04-25 | Closed | |
样例输出
| customer_number |
|-----------------|
| 3 |
sql语句,拿去即可运行:
DDL语句:
/*
Navicat Premium Data Transfer
Source Server : 我的mysql
Source Server Type : MySQL
Source Server Version : 50736
Source Host : 8.136.255.28:3306
Source Schema : test
Target Server Type : MySQL
Target Server Version : 50736
File Encoding : 65001
Date: 12/01/2022 10:42:11
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for orders
-- ----------------------------
DROP TABLE IF EXISTS `orders`;
CREATE TABLE `orders` (
`order_number` int(10) NOT NULL AUTO_INCREMENT,
`customer_number` int(10) DEFAULT NULL,
`order_date` datetime(0) DEFAULT NULL,
`required_date` datetime(0) DEFAULT NULL,
`shipped_date` datetime(0) DEFAULT NULL,
`status` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,
`comment` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,
PRIMARY KEY (`order_number`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of orders
-- ----------------------------
INSERT INTO `orders` VALUES (1, 1, '2022-01-12 10:33:35', '2022-01-12 10:33:46', '2022-01-12 10:34:01', '0', '0');
INSERT INTO `orders` VALUES (2, 2, '2022-01-12 10:33:38', '2022-01-12 10:33:48', '2022-01-12 10:34:04', '1', '0');
INSERT INTO `orders` VALUES (3, 3, '2022-01-12 10:33:41', '2022-01-12 10:33:51', '2022-01-12 10:34:09', '0', '0');
INSERT INTO `orders` VALUES (4, 3, '2022-01-12 10:33:44', '2022-01-12 10:33:54', '2022-01-12 10:34:12', '0', '0');
SET FOREIGN_KEY_CHECKS = 1;
select customer_number
from orders
group by customer_number
order by count(*) desc limit 1;
运行结果:
大佬的自动忽略,需要的cv运行一下,感受会不一样
我要刷100道算法题,第91道