新手才学sql 不久  对个习题不解
表结构如下要求Show 员工所在的the department id 名字 和 employees 的个数(其所在的department的人数少于4个)感谢!

解决方案 »

  1.   

    如果还想关联出部门名称,你得关联部门表,而你并没有提供部门表
    SELECT DEPARTMENT_ID,COUNT(EMPLOYEE_ID)FROM TB HAVING COUNT(EMPLOYEE_ID)<4
      

  2.   

    SELECT  a.*,b.Department_Name,c.DepartmentEmployeeCount
    FROM    Employee AS a
            INNER JOIN Dept AS b ON a.Department_ID = b.Department_ID
            INNER JOIN (SELECT Department_ID,COUNT(1) AS DepartmentEmployeeCount FROM Employee GROUP BY Department_ID ) AS c ON c.Department_ID=a.Department_ID
            
            
            
      

  3.   


    SELECT DEPARTMENT_ID,COUNT(EMPLOYEE_ID) AS 个数
    FROM TB 
    GROUP BY DEPARTMENT_ID
    HAVING COUNT(EMPLOYEE_ID)<4
      

  4.   

    忘加GROUP BY了SELECT DEPARTMENT_ID,COUNT(EMPLOYEE_ID)FROM TB GROUP BY DEPARTMENT_ID HAVING COUNT(EMPLOYEE_ID)<4