【背景】:公司需要对过去一段时间的销售情况进行深入分析,以了解哪些产品在特定时间段内表现最为出色。 【原始表】: products(产品)表: product_id (产品 ID): 产品的唯一标识符 product_name (产品名称): 产品的名称 sales_records(销售记录)表: sales_id (销售 ID): 销售记录的唯一标识符 product_id (产品 ID): 产品的唯一标识符,用于关联产品表中的产品 sales_date (销售日期): 销售发生的日期 sales_amount (销售金额): 该次销售的金额 sales_quantity (销售数量): 该次销售的产品数量 【要求】:根据上面这两个表格,查询在'2024-01-01' —'2024-12-31'销量最高的产品,包含的字段:产品 ID、产品名称、总销售额、总销量。如果存在销量一样的多个产品,都展示出来且按照产品ID升序排列,要求查询出来的表格的字段如下: product_id: 产品的唯一标识符。 product_name: 产品的名称。 total_sales_amount: 总销售额。 total_sales_quantity: 总销量。 【示例】: products(产品)表: sales_records(销售记录)表: 【按照要求查询出来的表】 【解释】:2024年的订单有4笔,其中产品ID是1和3的销量最高,都是16,所以查询出来产品ID是1和3的产品,他们的总销售金额也一样都是900
示例1
输入
DROP TABLE IF EXISTS products;
DROP TABLE IF EXISTS sales_records;
-- 创建表
CREATE TABLE products (
product_id INT PRIMARY KEY,
product_name VARCHAR(50)
);
CREATE TABLE sales_records (
sales_id INT PRIMARY KEY,
product_id INT,
sales_date DATE,
sales_amount DECIMAL(10, 2),
sales_quantity INT
);
-- 插入数据
INSERT INTO products (product_id, product_name)
VALUES (1, '产品 A'),
(2, '产品 B'),
(3, '产品 C'),
(4, '产品 D');
INSERT INTO sales_records (sales_id, product_id, sales_date, sales_amount, sales_quantity)
VALUES (1, 1, '2024-03-05', 500.00, 10),
(2, 2, '2024-05-10', 300.00, 8),
(3, 1, '2024-06-20', 400.00, 6),
(4, 3, '2024-06-20', 900.00, 16);
select * from products;
select * from sales_records;
输出
product_id|product_name|total_sales_amount|total_sales_quantity
1|产品 A|900.00|16
3|产品 C|900.00|16
加载中...