mysql每日一题0722--各部门人数

hope you can enjoy 😄 !
😇

image

  • 测试数据

CREATE TABLE 部门表(ID int,部门 VARCHAR(10),父ID int);
CREATE TABLE 职工表(部门 VARCHAR(10),姓名 VARCHAR(10));

INSERT INTO 部门表 VALUES(1,'A公司',null);
INSERT INTO 部门表 VALUES(2,'A部',1);
INSERT INTO 部门表 VALUES(3,'B部',1);
INSERT INTO 部门表 VALUES(4,'A部1',2);
INSERT INTO 部门表 VALUES(5,'A部2',2);
INSERT INTO 部门表 VALUES(6,'B部1',3);
INSERT INTO 部门表 VALUES(7,'A部11',4);
 

INSERT INTO 职工表 VALUES('A部','刘备');
INSERT INTO 职工表 VALUES('A部','关羽');
INSERT INTO 职工表 VALUES('A部1','张飞');
INSERT INTO 职工表 VALUES('A部1','曹操');
INSERT INTO 职工表 VALUES('A部2','孙权');
INSERT INTO 职工表 VALUES('B部', '周瑜');
INSERT INTO 职工表 VALUES('A部11','黄忠');
INSERT INTO 职工表 VALUES('B部','马超');
INSERT INTO 职工表 VALUES('B部','赵云');
  • solution
select substr(a.部门,1,2) 部门,count(b.姓名) 人数 from 部门表 a
left join  职工表 b
on a.部门 = b.部门
where b.部门 is not null
group  by 1

posted on 2021-07-22 15:15  多一点  阅读(300)  评论(0编辑  收藏  举报

导航