查询人数最多的部门及各部门男女人数

首先是建表语句:

spool employee.log

prompt
prompt Creating table EMPLOYEE
prompt =======================
prompt
create table JCXT.EMPLOYEE
(
  id   VARCHAR2(20),
  name VARCHAR2(20),
  sex  VARCHAR2(20),
  dep  VARCHAR2(20)
)
tablespace ZXGL
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    next 1M
    minextents 1
    maxextents unlimited
  );


spool off

插入数据:

insert into employee values('1','李一','女','产品');
insert into employee values('2','李二','男','销售');
insert into employee values('3','李三','女','开发');
insert into employee values('4','李四','男','开发');
insert into employee values('5','李五','男','产品');
insert into employee values('6','李六','女','开发');
insert into employee values('7','李七','女','销售');

查询表:

select * from employee;

效果如下:

 查询人数最多的部门:

select * from (select dep,count(name) renshu from employee group by dep order by renshu desc) where rownum=1;

查询结果如下:

 查询各部门男女数:

select dep 部门,
       count(name) 总人数,
       sum(case
             when sex = '男' then
              1
             else
              0
           end) 男生人数,
       sum(case
             when sex = '女' then
              1
             else
              0
           end) 女生人数
  from employee
 group by dep

查询结果如下:

 

 

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值