› Fóruns › SQL e PL/SQL › Select › Select
consegui,
bom não sei se esse é o modo mais correto, mas estou chegando no resultado final entre todas aquelas consultas que fizemos anteriormente consegui chegar nesse resultado olha como ficou :
select zx.nome_cliente, zx.nome_do_fundo, co.data, co.valor
,(select max(co.valor/x.valor) -1 from cotacoes x
where trunc(add_months(co.data,-1),’MM’) = trunc(x.data,’MM’) AND co.cod_produto = x.cod_produto )”Rentabilidade”
from cotacoes CO, zxt_cal_rentabilidade ZX
where zx.nome_cliente = (:nome) and co.cod_produto = zx.cod_produto and
co.data in (select max(RET_DATA) from
(select to_date(ZT.data_entrada)+level-1 RET_DATA
from zxt_cal_rentabilidade ZT
connect by
to_date(ZT.data_entrada)+level-1
<= last_day(to_date(ZT.data_final))
MINUS
select FI.data from feriados_internacionais FI
where cod_calendario = '-1316'
)
GROUP by
to_char(RET_DATA,'MM/YYYY')
)
order by zx.nome_do_fundo, co.data
como falei não sei se é a maneira mais certa de fazer, porem se tiver que trabalhar em cima da otimização da consulta creio eu que sera mais facil ja que tenho o resultado,
muito obrigado por enquanto…