rob@XE:11g2> r

  1  SELECT * FROM

  2    (

  3     SELECT

  4        D.department_name AS Organization,

  5        E.emptype,

  6        E.employee_id,

  7        E.salary

  8     FROM emp_4pivot E, departments D

  9     WHERE E.department_id IS NOT NULL

 10     AND E.manager_id IS NOT NULL

 11     AND D.department_id = E.department_id

 12     ORDER BY 1

 13    )

 14     PIVOT

 15    (

 16      COUNT(employee_id) AS ct,

 17      SUM(salary) AS totpay,

 18      AVG(salary) AS avgpay

 19      FOR (emptype) IN ('staff', 'mgmt')

 20    )

 

ORGANIZATION      staff_CT  staff_TOTPAY  staff_AVGPAY  mgmt_CT  mgmt_TOTPAY  mgmt_AVGPAY

================  ========  ============  ============  =======  ===========  ===========

Administration           1         43648         43648        0

Accounting               1         82336         82336        1    119119.36    119119.36

Purchasing               5        137888       27577.6        1       109120       109120

Human Resources          1         64480         64480        0

IT                       4      314265.6       78566.4        1       142848       142848

Public Relations         1         99200         99200        0

Executive                0                                    2       337280       168640

Shipping                40       1190400         29760        5       361088      72217.6

Sales                   29       2415520      83293.79        5       605120       121024

Finance                  5      471398.4      94279.68        1    142943.23    142943.23

Marketing                2     157489.92      78744.96        1       128960       128960

11 rows selected.