【背景】:一家公司想要了解 2023 年全年所有商品的盈利情况。 【原始表】: sales_orders(销售订单)表: order_id (订单 ID): 订单的唯一标识符 product_id (商品 ID): 商品的唯一标识符 quantity (销售数量): 销售的商品数量 unit_price (销售单价): 商品的销售单价 order_date (订单日期): 订单的日期 purchase_prices(进货价)表: product_id (商品 ID): 商品的唯一标识符 purchase_price (进货单价): 商品的进货单价 【要求】:需要根据表格数据查询出每个商品在 2023 年的利润,字段包括具体字段名。根据上面这两个表格,查询每个商品在 2023 年的利润,包含的字段:商品 ID、利润。查询出来的数据按照商品 ID 升序排列。要求查询出来的表格的字段如下: product_id: 商品的唯一标识符。 profit: 2023 年的利润(利润 = (销售单价 - 进货单价)* 销售数量)。 profit_margin :单个产品的利润率 (利润率 = (产品平均单价-产品进货单价)产品进货单价)(round保留2位小数) 【示例】: sales_orders(销售订单)表: purchase_prices(进货价)表: 【按照要求查询出来的表】 【解释】 上述示例中,产品ID是1 的产品利润=(50-30)*10 = 200 利润率 = (50-30)30 = 66.67%
示例1
输入
DROP TABLE IF EXISTS sales_orders;
DROP TABLE IF EXISTS purchase_prices;
-- 创建表
CREATE TABLE sales_orders (
order_id INT PRIMARY KEY,
product_id INT,
quantity INT,
unit_price DECIMAL(10, 2),
order_date DATE
);
CREATE TABLE purchase_prices (
product_id INT PRIMARY KEY,
purchase_price DECIMAL(10, 2)
);
-- 插入数据
INSERT INTO sales_orders (order_id, product_id, quantity, unit_price, order_date)
VALUES (1, 1, 10, 50.00, '2023-01-01'),
(2, 2, 20, 30.00, '2023-03-01');
INSERT INTO purchase_prices (product_id, purchase_price)
VALUES (1, 30.00),
(2, 15.00);
select * from sales_orders;
select * from purchase_prices;
输出
product_id|total_profit|profit_margin
1|200.00|66.67
2|300.00|100.00
加载中...