para hacer encabezado de la tabla primero realizo la consulta para saber el numero de volcanes el cual es 7
    
Código SQL:
Ver original- CREATE TABLE volcan 
- ( 
-   codigo CHARACTER VARYING(10) NOT NULL, 
-   nombre CHARACTER VARYING(30), 
-   descripcion CHARACTER VARYING(50), 
-   latitud REAL, 
-   longitud REAL, 
-   codigo_observatorio CHARACTER VARYING(8), 
-   alias CHARACTER VARYING(15), 
-   CONSTRAINT pk_volcan_codigo PRIMARY KEY (codigo), 
-   CONSTRAINT fk_volcan_observatorio FOREIGN KEY (codigo_observatorio) 
-       REFERENCES observatorio (codigo) MATCH SIMPLE 
-       ON UPDATE NO ACTION ON DELETE NO ACTION 
- ) 
-   
- SELECT * FROM volcan WHERE codigo_observatorio = 'ovsm' ORDER BY nombre 
- SELECT COUNT(*) FROM volcan WHERE codigo_observatorio = 'ovsm' 
la consulta para los 140 registros es esta    
Código SQL:
Ver original- SELECT cantidad,item,volcan.codigo AS codigovolcan,volcan.nombre AS nombrevolcan,volcan.alias,codigo_observatorio,tipo_estacion.codigo AS codigotipoestacion,tipo_estacion.nombre AS nombreestacion,area.nombre AS nombrearea,area.codigo AS codigoarea FROM inv_est_instaladas,volcan,tipo_estacion,area WHERE inv_est_instaladas.codigo_volcan = volcan.codigo AND tipo_estacion.codigo = inv_est_instaladas.codigo_tipo_estacion AND tipo_estacion.codigo_area = area.codigo AND volcan.codigo_observatorio = :obsevatorio ORDER BY area.codigo, tipo_estacion.codigo, volcan.codigo 
y esta es la estructura de las tablas consultadas    
Código SQL:
Ver original- CREATE TABLE inv_est_instaladas 
- ( 
-   cantidad INTEGER, 
-   codigo_volcan CHARACTER VARYING(10), 
-   codigo_tipo_estacion CHARACTER VARYING(8), 
-   item serial NOT NULL, 
-   CONSTRAINT pk_inv_est_instaladas PRIMARY KEY (item), 
-   CONSTRAINT fk_inv_est_instaladas_volcan FOREIGN KEY (codigo_volcan) 
-       REFERENCES volcan (codigo) MATCH SIMPLE 
-       ON UPDATE NO ACTION ON DELETE NO ACTION, 
-   CONSTRAINT fk_inv_estaciones_tipo_estacion FOREIGN KEY (codigo_tipo_estacion) 
-       REFERENCES tipo_estacion (codigo) MATCH SIMPLE 
-       ON UPDATE NO ACTION ON DELETE NO ACTION 
- ) 
-   
- CREATE TABLE tipo_estacion 
- ( 
-   codigo CHARACTER VARYING(15) NOT NULL, 
-   codigo_area CHARACTER VARYING(15), 
-   descripcion CHARACTER VARYING(50), 
-   nombre CHARACTER VARYING(40), 
-   suma BOOLEAN, 
-   CONSTRAINT pk_tipo_estacion_codigo PRIMARY KEY (codigo), 
-   CONSTRAINT fk_tipo_estacion_area FOREIGN KEY (codigo_area) 
-       REFERENCES area (codigo) MATCH SIMPLE 
-       ON UPDATE NO ACTION ON DELETE NO ACTION 
- ) 
-   
- CREATE TABLE area 
- ( 
-   codigo CHARACTER VARYING(15) NOT NULL, 
-   descripcion CHARACTER VARYING(250), 
-   nombre CHARACTER VARYING(30), 
-   CONSTRAINT area_pkey PRIMARY KEY (codigo) 
- ) 
y las dos consultas que requiero poner en las ultimas columnas son , tambien son 140 registros    
Código SQL:
Ver original- SELECT item,volcan.codigo AS codigovolcan,volcan.nombre AS nombrevolcan,volcan.alias,codigo_observatorio,tipo_estacion.codigo AS codigotipoestacion,tipo_estacion.nombre AS nombreestacion,area.nombre AS nombrearea,area.codigo AS codigoarea 
- FROM inv_est_instaladas,conectividad_inv_estaciones,volcan,tipo_estacion,area 
- WHERE inv_est_instaladas.item = conectividad_inv_estaciones.item_inv_est_instaladas AND inv_est_instaladas.codigo_volcan = volcan.codigo AND tipo_estacion.codigo = inv_est_instaladas.codigo_tipo_estacion AND tipo_estacion.codigo_area = area.codigo AND volcan.codigo_observatorio = 'ovsm' AND tipo_estacion.suma = 't' AND conectividad_inv_estaciones.item_conectividad = 1 ORDER BY area.codigo, tipo_estacion.codigo, volcan.codigo