Fórum Fazer uma função usando sentença em SQL (Urgente) #212671
09/02/2004
0
Preciso de uma função para a seguinte sentença:
select t1.areaparcial*( t1. areaparcial * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
select t1.arearealizada*( t1. arearealizada * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
select t1.areaprevista*( t1. areaprevista * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
Tenho que calcular estes 3 campos para o mesmo registro(areaparcial, arearealizada, areaprevista)usando esta sentença e mudando apenas os campos referentes, como posso fazer isso?
Estas sentenças terão de ser executada dentro da mesma função, onde teria de calcular a areaparcial, arearealizada e areaprevista juntas, executada pra fazer uma replicação, onde será replicado o valor dos campos areaparcial, arearealizada e areaprevista de acordo com a área total de cada registro.
Por exemplo:
Tenho cadastrado um registro como: cód 001 areaparcial = 10,92, arearealizada = 11.4 e areaprevista = 11.4 areatotal = 12.
Quero fazer uma replicação deste registro para outro, onde o resultado da porcentagem é 91¬ da areaparcial e 95¬ da arearealizada e 95¬ da areaprevista referente ao registro 1.
Esta porcentagem será calculada para os registro que serão replicados, se o outro registro que for replicado tiver, por exemplo, areatotal = 18, a areaparcial terá 91¬ = 16,38, arearealizada e areaprevista terá 95¬ tmb de 18 = 17,1 e assim sucessivamente.
Obrigado.
select t1.areaparcial*( t1. areaparcial * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
select t1.arearealizada*( t1. arearealizada * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
select t1.areaprevista*( t1. areaprevista * 100/ t2.AREAtotal)/100
from teste1 t1, teste t2
where t1.cód = t2.cod
Tenho que calcular estes 3 campos para o mesmo registro(areaparcial, arearealizada, areaprevista)usando esta sentença e mudando apenas os campos referentes, como posso fazer isso?
Estas sentenças terão de ser executada dentro da mesma função, onde teria de calcular a areaparcial, arearealizada e areaprevista juntas, executada pra fazer uma replicação, onde será replicado o valor dos campos areaparcial, arearealizada e areaprevista de acordo com a área total de cada registro.
Por exemplo:
Tenho cadastrado um registro como: cód 001 areaparcial = 10,92, arearealizada = 11.4 e areaprevista = 11.4 areatotal = 12.
Quero fazer uma replicação deste registro para outro, onde o resultado da porcentagem é 91¬ da areaparcial e 95¬ da arearealizada e 95¬ da areaprevista referente ao registro 1.
Esta porcentagem será calculada para os registro que serão replicados, se o outro registro que for replicado tiver, por exemplo, areatotal = 18, a areaparcial terá 91¬ = 16,38, arearealizada e areaprevista terá 95¬ tmb de 18 = 17,1 e assim sucessivamente.
Obrigado.
Querra
Curtir tópico
+ 0
Responder
Posts
09/02/2004
Luineumann
Se eu entendi o que vc quer faça
select t1.areaparcial*( t1. areaparcial * 100/ t2.AREAtotal)/100 as vlr_parcial,
t1.arearealizada*( t1. arearealizada * 100/ t2.AREAtotal)/100 as vlr_realizada,
t1.areaprevista*( t1. areaprevista * 100/ t2.AREAtotal)/100 as vlr_prevista
from teste1 t1, teste t2
where t1.cód = t2.cod
select t1.areaparcial*( t1. areaparcial * 100/ t2.AREAtotal)/100 as vlr_parcial,
t1.arearealizada*( t1. arearealizada * 100/ t2.AREAtotal)/100 as vlr_realizada,
t1.areaprevista*( t1. areaprevista * 100/ t2.AREAtotal)/100 as vlr_prevista
from teste1 t1, teste t2
where t1.cód = t2.cod
Responder
Gostei + 0
11/02/2004
Querra
Olá luineumann,
esta sentença que vc perguntou pode ser uma boa saida pode ser isso mesmo..
Se vc poder me ajudar ficaria grato...
Obrigado...
esta sentença que vc perguntou pode ser uma boa saida pode ser isso mesmo..
Se vc poder me ajudar ficaria grato...
Obrigado...
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)