select t1.department, t1.部门人数,t2.部门李人数 from 
(
select count(1) as 部门人数,Department
 from tablename t1 group by Department
) t1
(
select count(1) as 部门李人数,Department  from tablename where name like '李%'
group by Department
) t2
where t1.department=t2.department

解决方案 »

  1.   

    Select Department, Count(*)
      From (Select * From TABLE_NAME Where Name Like '李%')
     Group By Department;
      

  2.   

    少了个逗号,修改
    select t1.department, t1.部门人数,t2.部门李人数 from (
    select count(1) as 部门人数,Department
     from tablename t1 group by Department) t1,
    (
    select count(1) as 各部门姓“李”的人数,Department  from tablename where name like '李%'
    group by Department) t2
    where t1.department=t2.department
      

  3.   

    抱歉,刚才看错了,应该是:select a.Department 部门,a.cn 总人数,b.cn 李型人数 from 
    (Select Department, Count(*) cn
      From TABLE_NAME 
     Group By Department) a,
    (Select Department, Count(*) cn
      From (Select * From TABLE_NAME Where Name Like '李%')
     Group By Department) b 
    where a.Department=b.Department(+);
      

  4.   

    select a.a1,nvl(b.a2,0),a.Depatment from
    (select count(*) a1,Depatment from table_name  group by Depatment) a,
    (select count(*) a2,Depatment from table_name where zgxm like '李%' group by Depatment) b 
    where a.Depatment=b.Depatment(+)