1、select A.*,B.* from 职工信息表 as A Left join 部门信息表 as B on A.部门编号=B.部门编号 2、select sum(A.职工编号) as 职工数  from 职工信息表 as A 
group by A.部门编号

解决方案 »

  1.   

    1.
    select a.*,b.部门名称,b.工资水平 from 职工信息表 a,部门信息表 b where a.部门编号=b.部门编号(+);(可列出所有人员,如果该人员没有部门则部门名称和工资水平为空)
    2.
    select b.部门名称,a.数目 from (select 部门编号,count(*) 数目 from 职工信息表 group by 部门编号) a,部门信息表 b where a.部门编号=b.部门编号;
    3.
    select avg(decode(年龄,'男',工资水平,'')) 男职工平均工资,avg(decode(年龄,'女',工资水平,'')) 女职工平均工资 from(select a.年龄,b.工资水平 from 职工信息表 a,部门信息表 b where a.部门编号=b.部门编号);
    4.
    select avg(decode(年龄,'男',工资水平,''))/avg(decode(年龄,'女',工资水平,'')) 女职工平均工资 from(select a.年龄,b.工资水平 from 职工信息表 a,部门信息表 b where a.部门编号=b.部门编号);
      

  2.   

    1、select 职工编号,姓名,性别,年龄,(select 部门名称 from 职工信息表 where 部门编号=a.部门编号) from 职工信息表;2、select count(1),部门名称 from 职工信息表 a,部门信息表 b where a.部门编号=b.部门编号 group by 部门编号,部门名称3、select avg(decode(年龄,'男',工资水平)) 男职工平均工资,avg(decode(年龄,'女',工资水平)) 女职工平均工资 from 职工信息表 a,部门信息表 b where a.部门编号=b.部门编号);