--* 由于你 组合表的商品名称存在同名称,所以,在销售表中,要增加“编号”的字段
--* 同时,如果你的销售表中存在相同的行,即“员工,商品,编号”都相同,还要先去重复
create table 组合(编号 varchar(3),商品 varchar(20))
INSERT INTO 组合(编号,商品) VALUES ('001','A')
INSERT INTO 组合(编号,商品) VALUES ('001','B')
INSERT INTO 组合(编号,商品) VALUES ('002','A')
INSERT INTO 组合(编号,商品) VALUES ('002','C')
INSERT INTO 组合(编号,商品) VALUES ('002','D')
create table 销售(员工 varchar(10),商品 varchar(20),编号 varchar(3))
INSERT INTO 销售(员工,商品,编号) VALUES ('李娜','A','001')
INSERT INTO 销售(员工,商品,编号) VALUES ('李娜','B','001')
INSERT INTO 销售(员工,商品,编号) VALUES ('李娜','D','002')
INSERT INTO 销售(员工,商品,编号) VALUES ('王军','A','001')
INSERT INTO 销售(员工,商品,编号) VALUES ('王军','C','002')
INSERT INTO 销售(员工,商品,编号) VALUES ('鸿志','A','001')
INSERT INTO 销售(员工,商品,编号) VALUES ('鸿志','B','001')
INSERT INTO 销售(员工,商品,编号) VALUES ('鸿志','A','002')
INSERT INTO 销售(员工,商品,编号) VALUES ('鸿志','C','002')
INSERT INTO 销售(员工,商品,编号) VALUES ('鸿志','D','002')
SELECT t1.编号,t1.员工 FROM
(SELECT 员工,编号,COUNT(商品) as 种数 FROM 销售 GROUP BY 员工,编号)t1,
(SELECT 编号,COUNT(商品) as 种数 FROM 组合 GROUP BY 编号)t2
WHERE t1.种数=t2.种数
ORDER BY t1.编号,t1.员工 desc