Oracle SQL:经典查询练手第四篇

发表于:2011-6-28 10:15

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:胡勇    来源:51Testing软件测试网采编

分享:
  1. /*--------4、列出每个部门中有同样工资的员工的统计信息,  
  2.   列出他们的部门号,工资,人数。---------*/  
  3.  
  4. SQL> SELECT EMP1.DEPARTMENT_ID,EMP1.SALARY,COUNT(*) CNT  
  5.    2  FROM   EMPLOYEES EMP1,EMPLOYEES EMP2  
  6.    3  WHERE  EMP1.DEPARTMENT_ID = EMP2.DEPARTMENT_ID AND 
  7.    4          EMP1.SALARY = EMP2.SALARY  
  8.    5          AND EMP1.EMPLOYEE_ID <> EMP2.EMPLOYEE_ID  
  9.    6  GROUP BY EMP1.DEPARTMENT_ID,EMP1.SALARY;  
  10.    
  11. DEPARTMENT_ID     SALARY        CNT  
  12. ------------- ---------- ----------  
  13.            50    2200.00          2  
  14.            50    2400.00          2  
  15.            50    2500.00         20  
  16.            50    2600.00          6  
  17.            50    2700.00          2  
  18.            50    2800.00          6  
  19.            50    2900.00          2  
  20.            50    3000.00          2  
  21.            50    3100.00          6  
  22.            50    3200.00         12  
  23.            50    3300.00          2  
  24.            50    3600.00          2  
  25.            60    4800.00          2  
  26.            80    7000.00          2  
  27.            80    7500.00          2  
  28.            80    8000.00          6  
  29.            80    9000.00          2  
  30.            80    9500.00          6  
  31.            80   10000.00          6  
  32.            80   10500.00          2   
  33.            80   11000.00          2  
  34.            90   20000.00          2  
  35.    
  36. 22 rows selected

  1. /*--------5、列出同部门中工资高于1000 的员工数量超过2 人的部门,  
  2. 显示部门名字、地区名称。---------*/  
  3.  
  4. SQL> SELECT D.DEPARTMENT_NAME,L.CITY,COUNT(*)  
  5.    2  FROM EMPLOYEES E,DEPARTMENTS D,LOCATIONS L  
  6.    3  WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID AND 
  7.    4         D.LOCATION_ID   = L.LOCATION_ID    AND 
  8.    5         E.SALARY > 1000  
  9.    6  GROUP BY D.DEPARTMENT_NAME,L.CITY  
  10.    7  HAVING COUNT(*) > 2;  
  11.    
  12. DEPARTMENT_NAME                CITY                             COUNT(*)  
  13. ------------------------------ ------------------------------ ----------  
  14. IT                             Southlake                               5  
  15. Sales                          Oxford                                 34  
  16. Finance                        Seattle                                 6  
  17. Shipping                       South San Francisco                    45  
  18. Executive                      Seattle                                 3  
  19. Purchasing                     Seattle                                 6  
  20.    
  21. rows selected

  1. /*--------6、哪些员工的工资,高于整个公司的平均工资,  
  2.   列出员工的名字和工资(降序)。---------*/  
  3.  
  4. SQL> SELECT FIRST_NAME || ' ' || LAST_NAME,SALARY  
  5.    2  FROM EMPLOYEES  
  6.    3  WHERE SALARY > (  
  7.    4        SELECT AVG(SALARY)  
  8.    5        FROM EMPLOYEES  
  9.    6        )  
  10.    7  ORDER BY SALARY DESC;   
  11. FIRST_NAME||''||LAST_NAME                          SALARY  
  12. ---------------------------------------------- ----------  
  13. Steven King                                      24000.00  
  14. Neena Kochhar                                    20000.00  
  15. Lex De Haan                                      20000.00  
  16. John Russell                                     14000.00  
  17. Karen Partners                                   13500.00  
  18. Michael Hartstein                                13000.00  
  19. Nancy Greenberg                                  12000.00  
  20. Alberto Errazuriz                                12000.00  
  21. Shelley Higgins                                  12000.00  
  22. Lisa Ozer                                        11500.00  
  23. Den Raphaely                                     11000.00  
  24. Gerald Cambrault                                 11000.00  
  25. Ellen Abel                                       11000.00  
  26. Eleni Zlotkey                                    10500.00  
  27. Clara Vishney                                    10500.00  
  28. Peter Tucker                                     10000.00  
  29. Janette King                                     10000.00  
  30. Harrison Bloom                                   10000.00  
  31. Hermann Baer                                     10000.00  
  32. Tayler Fox                                        9600.00  
  33. --共50条数据

64/6<123456>
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海漕溪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号