【背景】:电商平台想要查询出每个商品在 2024 年上半年(1 月至 6 月)的总销售额。 【原始表】: products_underline (商品)表: product_id (商品 ID): 商品的唯一标识符,INT product_name (商品名称): 商品的名称,VARCHAR(50) price (价格): 商品的单价,DECIMAL(10, 2) sales_underline (销售)表: sale_id (销售 ID): 销售的唯一标识符,INT product_id (商品 ID): 商品的唯一标识符,用于关联商品表中的商品,INT sale_month (销售月份): 销售发生的月份,VARCHAR(7)(格式:'YYYY-MM') quantity (销售数量): 销售的商品数量,INT 【要求】:根据上述表格,查询出每个商品在 2024 年上半年(1 月至 6 月)的总销售额。查询结果按照商品 ID 升序排列。要求查询出来的表格的字段如下: product_id: 商品的唯一标识符。 product_name: 商品的名称。 total_sales: 2024 年上半年的总销售额。(round保留2位小数) 【示例】: products_underline (商品)表: sales_underline (销售)表: 【按要求查询出来的表】 【解释】 上述表中,2024年1-6月份和产品ID是1的产品有关的销售数据有3笔,总销量是370,单价是10.99,总销售额total_sales = 370*10.99 round保留2位小数等于4066.30
示例1
输入
DROP TABLE IF EXISTS products_underline;
DROP TABLE IF EXISTS sales_underline;
-- 创建商品表
CREATE TABLE products_underline (
product_id INT PRIMARY KEY,
product_name VARCHAR(50),
price DECIMAL(10, 2)
);
-- 创建销售表
CREATE TABLE sales_underline (
sale_id INT PRIMARY KEY,
product_id INT,
sale_month VARCHAR(7),
quantity INT
);
-- 插入测试数据
INSERT INTO products_underline (product_id, product_name, price) VALUES
(1, 'Product A', 10.99),
(2, 'Product B', 20.50),
(3, 'Product C', 15.75);
INSERT INTO sales_underline (sale_id, product_id, sale_month, quantity) VALUES
(1, 1, '2024-01', 100),
(2, 1, '2024-02', 150),
(3, 1, '2024-03', 120),
(4, 2, '2024-01', 80),
(5, 2, '2024-02', 90),
(6, 2, '2024-03', 110),
(7, 3, '2024-01', 50),
(8, 3, '2024-02', 70),
(9, 3, '2024-03', 60);
select * from products_underline;
select * from sales_underline;
输出
product_id|product_name|total_sales
1|Product A|4066.30
2|Product B|5740.00
3|Product C|2835.00
加载中...