Está en la página 1de 4

--Reporte 02 y 03

select to_char(d.des_dfecha,'YYYY') as ano, to_char(d.des_dfecha,'mm') as mes,


l.lug_ncodigo,lug_vdescri,
count(distinct to_char(dz.des_dfecha)|| dz.emb_ncodigo || substr('000'|| to_char
(dz.des_nnumvia),-4,4) )as viajes,
sum(dsz_ndesemb) as captura,
count(distinct dz.emb_ncodigo) as nro_emb,
count(distinct dz.des_dfecha) as nro_dias_muestreados
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join lugar l on d.lug_ncodigo=l.lug_ncodigo
where dz.tab_ncodare='00003' and dz.des_dfecha>='01/01/2015' and dz.des_dfecha<=
'31/03/2015'
and substr(d.emb_ncodigo,1,1)<>'4'
group by to_char(d.des_dfecha,'YYYY'), to_char(d.des_dfecha,'mm'),l.lug_ncodigo,
lug_vdescri
--Reporte 04
select to_char(d.des_dfecha,'YYYY') as ano, to_char(d.des_dfecha,'mm') as mes,
l.lug_ncodigo,lug_vdescri,
tab_ncodtax,tab_vnomtab,
e.esp_ncodigo,esp_vnomcom,esp_vnomcie,
dz.arp_ncodigo,arp_vdescri,
sum(dsz_ndesemb) as captura
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join lugar l on d.lug_ncodigo=l.lug_ncodigo
inner join arte_pesca art on dz.arp_ncodigo=art.arp_ncodigo
inner join especie e on dz.esp_ncodigo=e.esp_ncodigo
inner join tab_detalle td on tab_ncodtax=tab_ncodtab
where td.tab_ntabla='020' and dz.tab_ncodare='00003' and dz.des_dfecha>='01/01/2
015' and dz.des_dfecha<='31/03/2015'
group by to_char(d.des_dfecha,'YYYY'), to_char(d.des_dfecha,'mm'),l.lug_ncodigo,
lug_vdescri,tab_ncodtax,tab_vnomtab,e.esp_ncodigo,esp_vnomcom,esp_vnomcie,dz.arp
_ncodigo,arp_vdescri
--Reporte 05
select ap.ape_ncodigo,ape_vdescri,ape_vlatitu,ape_vlongit,ape_vlatrea,ape_vlonre
a,ape_ndistan,
(substr(ape_vlatrea,1,2)+substr(ape_vlatrea,3,2) / 60+substr(ape_vlatrea,5,2) /
3600)*-1 as latitud,
(substr(ape_vlonrea,1,2)+substr(ape_vlonrea,3,2) / 60+substr(ape_vlonrea,5,2) /
3600)*-1 as longitud,
lab_ncodigo,d.lug_ncodigo,lug_vdescri,
count(distinct to_char(dz.des_dfecha)|| dz.emb_ncodigo || substr('000'|| to_char
(dz.des_nnumvia),-4,4) )as viajes,
sum(dsz_ndesemb) as captura
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join area_pesca ap on dz.ape_ncodigo=ap.ape_ncodigo
inner join lugar l on d.lug_ncodigo=l.lug_ncodigo
where ap.tab_ncodare='00003' and not (trim(ap.ape_vlatrea)is null) and not (trim
(ap.ape_vlonrea)is null)
and dz.des_dfecha between '01/01/2015' and '31/03/2015'
group by to_char(d.des_dfecha,'YYYY') ,ap.ape_ncodigo,ape_vdescri,ape_vlatitu,ap
e_vlongit,ape_vlatrea,ape_vlonrea,ape_ndistan,
(substr(ape_vlatrea,1,2)+substr(ape_vlatrea,3,2) / 60+substr(ape_vlatrea,5,2) /
3600)*-1,
(substr(ape_vlonrea,1,2)+substr(ape_vlonrea,3,2) / 60+substr(ape_vlonrea,5,2) /

3600)*-1,
lab_ncodigo,d.lug_ncodigo,lug_vdescri
--Reporte 06
select ap.ape_ncodigo,ape_vdescri,ape_vlatitu,ape_vlongit,ape_vlatrea,ape_vlonre
a,ape_ndistan,
(substr(ape_vlatrea,1,2)+substr(ape_vlatrea,3,2) / 60+substr(ape_vlatrea,5,2) /
3600)*-1 as latitud,
(substr(ape_vlonrea,1,2)+substr(ape_vlonrea,3,2) / 60+substr(ape_vlonrea,5,2) /
3600)*-1 as longitud,
lab.lab_ncodigo,lab.lab_vnomlab,
dz.esp_ncodigo,esp_vnomcom,esp_vnomcie,
count(distinct to_char(dz.des_dfecha)|| dz.emb_ncodigo || substr('000'|| to_char
(dz.des_nnumvia),-4,4) )as viajes,
sum(dsz_ndesemb) as captura
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join area_pesca ap on dz.ape_ncodigo=ap.ape_ncodigo
inner join lugar lug on d.lug_ncodigo=lug.lug_ncodigo
inner join laboratorio lab on lug.lab_ncodigo=lab.lab_ncodigo
inner join especie es on dz.esp_ncodigo=es.esp_ncodigo
where ap.tab_ncodare='00003' and not (trim(ap.ape_vlatrea)is null) and not (trim
(ap.ape_vlonrea)is null)
and dz.des_dfecha between '01/01/2015' and '31/03/2015'
group by to_char(d.des_dfecha,'YYYY') ,ap.ape_ncodigo,ape_vdescri,ape_vlatitu,ap
e_vlongit,ape_vlatrea,ape_vlonrea,ape_ndistan,
(substr(ape_vlatrea,1,2)+substr(ape_vlatrea,3,2) / 60+substr(ape_vlatrea,5,2) /
3600)*-1,
(substr(ape_vlonrea,1,2)+substr(ape_vlonrea,3,2) / 60+substr(ape_vlonrea,5,2) /
3600)*-1,
lab.lab_ncodigo,lab.lab_vnomlab,
dz.esp_ncodigo,esp_vnomcom,esp_vnomcie

2- Lista de embarcaciones (con datos completos), segn ao / lugar / Captura total c


on sus nmero de viajes /Captura de merluza con sus viajes.
create or replace view v_temp_40
as
select to_char(d.des_dfecha,'YYYY') as ano, d.lug_ncodigo, d.emb_ncodigo,
sum(dsz_ndesemb) as captura_total,
count(distinct to_char(dz.des_dfecha)|| dz.emb_ncodigo || substr('000'|| to_char
(dz.des_nnumvia),-4,4) )as viajes_total
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join especie e on dz.esp_ncodigo=e.esp_ncodigo
where tab_ncodare='00003'
and dz.des_dfecha>='01/01/2015' and dz.des_dfecha<='31/12/2015'
group by to_char(d.des_dfecha,'YYYY'), d.lug_ncodigo, d.emb_ncodigo
select

to_char(d.des_dfecha,'YYYY') as anos, d.lug_ncodigo, lug_vdescri,


x.emb_ncodigo,emb_vdescri,emb_vmatric,emb_ncapbod,emb_neslora,emb_nmanga,emb_npu
ntal,tab_ncodtem,tab_vnomtab,emb_vobserv,x.captura_total,x.viajes_total,
sum(dsz_ndesemb) as captura_merluza,
count(distinct to_char(dz.des_dfecha)|| dz.emb_ncodigo || substr('000'|| to_char
(dz.des_nnumvia),-4,4) )as viajes_merluza
from desembarque d inner join v_temp_40 x on to_char(d.des_dfecha,'YYYY')=x.ano
and d.lug_ncodigo=x.lug_ncodigo and d.emb_ncodigo=x.emb_ncodigo
inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.emb_ncodigo=dz.emb_n
codigo and d.des_nnumvia=dz.des_nnumvia
inner join embarcacion em on em.emb_ncodigo=d.emb_ncodigo
inner join lugar l on d.lug_ncodigo=l.lug_ncodigo
inner join tab_detalle td on tab_ncodtem=tab_ncodtab
where td.tab_ntabla='003' and tab_ncodare='00003' and
dz.des_dfecha>='01/01/2015' and dz.des_dfecha<='31/12/2015' and dz.esp_ncodigo=
'0180'
group by to_char(d.des_dfecha,'YYYY'), d.lug_ncodigo,lug_vdescri,
x.emb_ncodigo,emb_vdescri,emb_vmatric,emb_ncapbod,emb_neslora,emb_nmanga,emb_npu
ntal,tab_ncodtem,tab_vnomtab,emb_vobserv,x.captura_total,x.viajes_total

3- El mismo reporte 2 pero con el filtro: CAPTURA DE MERLUZA SEA >= 40% DE SU CA
PTURA TOTAL
create or replace view v_temp_50 as
select
d.des_dfecha,d.emb_ncodigo,d.des_nnumvia,LUG_NCODIGO as cod_lugar,DES_NNUMCOR as
nro_reg,
des_ndesemb as cpt_total,
sum(dsz_ndesemb)as cpt_merluza
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join especie e on dz.esp_ncodigo=e.esp_ncodigo
where tab_ncodare='00003'
and dz.des_dfecha>='01/01/2015' and dz.des_dfecha<='31/12/2015' and dz.esp_ncod
igo='0180'
group by d.des_dfecha,d.emb_ncodigo,d.des_nnumvia,lug_ncodigo,des_nnumcor,des_nd
esemb
having decode(des_ndesemb,0,0,sum(dsz_ndesemb)*100 / des_ndesemb)>=40
select
to_char(des_dfecha,'YYYY') as anos, cod_lugar,
emb_ncodigo,
sum(cpt_merluza) as captura_merluza_40,
count(distinct to_char(des_dfecha)|| emb_ncodigo || substr('000'|| to_char(des_n
numvia),-4,4) )as viajes_merluza_40
from v_temp_50
group by to_char(des_dfecha,'YYYY'), cod_lugar, emb_ncodigo

select to_char(d.des_dfecha,'YYYY') as ano, to_char(d.des_dfecha,'mm') as mes,


d.lug_ncodigo,lug_vdescri,
em.emb_ncodigo,emb_vdescri,emb_vmatric,emb_ncapbod,emb_neslora,emb_nmanga,emb_np
untal,tab_ncodtem,emb_vobserv,
dz.arp_ncodigo,arp_vdescri,dac.dac_ncantid,
tab_ncodtax,tab_vnomtab,
e.esp_ncodigo,esp_vnomcom,esp_vnomcie,
count(distinct concat(to_char(dz.des_dfecha),concat(dz.emb_ncodigo,substr(concat
('000',to_char(dz.des_nnumvia)),-4,4)) ))as viajes,
sum(dsz_ndesemb) as captura
from desembarque d inner join dese_zona dz on d.des_dfecha=dz.des_dfecha and d.e
mb_ncodigo=dz.emb_ncodigo and d.des_nnumvia=dz.des_nnumvia
inner join embarcacion em on d.emb_ncodigo=em.emb_ncodigo
inner join lugar l on d.lug_ncodigo=l.lug_ncodigo
inner join arte_pesca art on dz.arp_ncodigo=art.arp_ncodigo
inner join especie e on dz.esp_ncodigo=e.esp_ncodigo
inner join tab_detalle td on tab_ncodtax=tab_ncodtab
left join dese_art_caract dac on dz.des_dfecha=dac.des_dfecha and dz.emb_ncodig
o=dac.emb_ncodigo and dz.des_nnumvia=dac.des_nnumvia and dz.arp_ncodigo='13' and
dac.arp_ncodigo='13'
where td.tab_ntabla='020' and dz.tab_ncodare='00003' and dz.des_dfecha>='01/01/2
014' and dz.des_dfecha<='31/12/2014'
group by to_char(d.des_dfecha,'YYYY'), to_char(d.des_dfecha,'mm'),d.lug_ncodigo,
lug_vdescri,
em.emb_ncodigo,emb_vdescri,emb_vmatric,emb_ncapbod,emb_neslora,emb_nmanga,emb_np
untal,tab_ncodtem,emb_vobserv,
dz.arp_ncodigo,arp_vdescri,dac.dac_ncantid,
tab_ncodtax,tab_vnomtab,
e.esp_ncodigo,esp_vnomcom,esp_vnomcie