>데이터 베이스 >MySQL 튜토리얼 >Oracle查询员工人数最少的部门

Oracle查询员工人数最少的部门

WBOY
WBOY원래의
2016-06-07 17:21:481585검색

--部门表 create table t_dept ( d_id number primary key , d_name varchar2(20) ); create sequence dept_seq

目的:查询员工人数最少的部门

知识点:分组函数,,排序,子查询,rownum

sql语句如下:

分析:

第一步:select count(*) coun,d_id deptId from t_emp group by d_id 查询t_emp表,根据部门d_id分组查询各部门的人数以d_id

第二步:select count(*) coun,d_id deptId from t_emp group by d_id order by coun asc 再orderby coun asc ,这样就按照人数升序排序,这样就第一条就是人数最少的

第三步:子查询,select * from (select count(*) coun,d_id deptId from t_emp group by d_id order by coun asc) where rownum=1 ,因为Oracle不支持select top 1,当要取第一条数据的时候,要用到oracel给查询分配的rownum列,where rownum=1就取到第一条数据了

 

结果如下:

---------------------------------------

counn deptid

---------------------------------------

2          3

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.