Oracle SQL:经典查询练手第五篇(1)(2)
/* --------1、哪些部门的人数比90号部门的人数多。---------*/ SQL SELECT DEPARTMENT_ID, COUNT (*) FROM EMPLOYEES 2 GROUP BY DEPARTMENT_ID 3 HAVING COUNT (*) 4( SELECT COUNT (*) FROM EMP
- /*--------1、哪些部门的人数比90号部门的人数多。---------*/
- SQL> SELECT DEPARTMENT_ID,COUNT(*) FROM EMPLOYEES
- 2 GROUP BY DEPARTMENT_ID
- 3 HAVING COUNT(*) >
- 4 (SELECT COUNT(*) FROM EMPLOYEES
- 5 WHERE DEPARTMENT_ID = 90
- 6 );
- DEPARTMENT_ID COUNT(*)
- ------------- ----------
- 30 6
- 50 45
- 60 5
- 80 34
- 100 6
- /*-------2、Den(FIRST_NAME)、Raphaely(LAST_NAME)的
- 领导是谁(非关联子查询)。---------*/
- SQL> SELECT FIRST_NAME || ' ' || LAST_NAME
- 2 FROM EMPLOYEES
- 3 WHERE EMPLOYEE_ID =
- 4 (SELECT MANAGER_ID FROM EMPLOYEES
- 5 WHERE FIRST_NAME = 'Den'
- 6 AND LAST_NAME = 'Raphaely'
- 7 );
- FIRST_NAME||''||LAST_NAME
- ----------------------------------------------
- Steven King
- /*-------3、Den(FIRST_NAME)、Raphaely(LAST_NAME)领导谁(非关联子查询)。---------*/
- SQL> SELECT FIRST_NAME || ' ' || LAST_NAME
- 2 FROM EMPLOYEES
- 3 WHERE MANAGER_ID IN
- 4 (SELECT EMPLOYEE_ID FROM EMPLOYEES
- 5 WHERE FIRST_NAME = 'Den'
- 6 AND LAST_NAME = 'Raphaely'
- 7 );
- FIRST_NAME||''||LAST_NAME
- ----------------------------------------------
- Alexander Khoo
- Shelli Baida
- Sigal Tobias
- Guy Himuro
- Karen Colmenares
- --或者
- SQL> SELECT FIRST_NAME || ' ' || LAST_NAME
- 2 FROM EMPLOYEES
- 3 WHERE MANAGER_ID =
- 4 (SELECT EMPLOYEE_ID FROM EMPLOYEES
- 5 WHERE FIRST_NAME = 'Den'
- 6 AND LAST_NAME = 'Raphaely'
- 7 );
- FIRST_NAME||''||LAST_NAME
- ----------------------------------------------
- Alexander Khoo
- Shelli Baida
- Sigal Tobias
- Guy Himuro
- Karen Colmenares
- /*-------4、Den(FIRST_NAME)、Raphaely(LAST_NAME)的领导是谁(关联子查询)。---------*/
- SQL> SELECT FIRST_NAME || ' ' || LAST_NAME
- 2 FROM EMPLOYEES EMP1
- 3 WHERE EXISTS (
- 4 SELECT 1 FROM EMPLOYEES EMP2
- 5 WHERE FIRST_NAME = 'Den'
- 6 AND LAST_NAME = 'Raphaely'
- 7 AND EMP2.MANAGER_ID = EMP1.EMPLOYEE_ID);
- FIRST_NAME||''||LAST_NAME
- ----------------------------------------------
- Steven King
- /*-------5、Den(FIRST_NAME)、Raphaely(LAST_NAME)领导谁(关联子查询)。---------*/
- SQL> SELECT FIRST_NAME || ' ' || LAST_NAME
- 2 FROM EMPLOYEES EMP1
- 3 WHERE EXISTS (
- 4 SELECT 1 FROM EMPLOYEES EMP2
- 5 WHERE FIRST_NAME = 'Den'
- 6 AND LAST_NAME = 'Raphaely'
- 7 AND EMP2.EMPLOYEE_ID = EMP1.MANAGER_ID);
- FIRST_NAME||''||LAST_NAME
- ----------------------------------------------
- Alexander Khoo
- Shelli Baida
- Sigal Tobias
- Guy Himuro
- Karen Colmenares
精彩图集
精彩文章