表: 订单表 +----------+--------------+ 字段名称 类型 +----------+--------------+ 订单号 varchar(512) 商品号 varchar(512) 支付金额 int(11) 优惠券码 int(11) +----------+--------------+ 商品号 是该表的主键。 该表的每一行都表示 一件商品的信息,包含订单号、商品名称、支付价格、优惠券码。 表: 品类表 +-------------+--------------+ 字段名称 类型 +-------------+--------------+ 商品号 varchar(512) 商品类型 varchar(512) +-------------+---------------+ 商品号 是该表的主键。 商品号 是 “订单表” 表中 商品号 的外键。 该表的每一行都表示不同类别商品的信息,包含商品号和商品的类型。 编写一个SQL查询,查询优惠券码为 01 且 商品类型为 B 的订单总数和这些订单对应的销售总额。 查询结果如下例所示。 示例 1: 输入: 表:订单表 +-----+-------+------+-------+ 订单号 商品号 支付金额 优惠券码 +-----+-------+------+-------+ 00A sku01 60 1 00A sku02 40 1 00B sku02 60 2 00C sku03 40 3 00C sku01 80 3 00C sku06 60 3 00D sku04 80 1 00D sku05 80 1 00E sku02 80 4 00E sku04 80 4 +-----+-------+------+-------+ 表:品类表 +-------+-------+ 商品号 商品类型 +-------+-------+ sku01 A sku02 B sku03 C sku04 C sku05 A sku06 C +-------+-------+ 输出: +-------+---------+ 总单数 总金额 +-------+---------+ 1 100 +-------+---------+ 只有"00A"符合条件,00A的销售总额为100
示例1
输入
CREATE TABLE 订单表
(
订单号 VARCHAR(512),
商品号 VARCHAR(512),
支付金额 INT,
优惠券码 INT
);
CREATE TABLE 品类表
(
商品号 VARCHAR(512),
商品类型 VARCHAR(512)
);
INSERT INTO 订单表 (订单号, 商品号, 支付金额, 优惠券码) VALUES
('00A', 'sku01', 60, 01),
('00A', 'sku02', 40, 01),
('00B', 'sku02', 60, 02),
('00C', 'sku03', 40, 03),
('00C', 'sku01', 80, 03),
('00C', 'sku06', 60, 03),
('00D', 'sku04', 80, 01),
('00D', 'sku05', 80, 01),
('00E', 'sku02', 80, 04),
('00E', 'sku04', 80, 04);
INSERT INTO 品类表 (商品号, 商品类型) VALUES
('sku01', 'A'),
('sku02', 'B'),
('sku03', 'C'),
('sku04', 'C'),
('sku05', 'A'),
('sku06', 'C');
加载中...