[firebase-br] Reduzir quantidade de testes em uma SP
Hélio Oliveira
hpensador em gmail.com
Qua Out 19 10:46:47 -03 2011
Bom dia Colegas!
Tenho uma SP onde tenho 2 for select (um dentro do outro), sendo que no
segundo eu faço testes if (codicao) then e gostaria de no momento em que
uma condição fosse satisfeita passar imediatamente para o próximo fetch.
Colocando suspend o registro é duplicado, exit sai da proc e break se
perde completamente. Há alguma forma que eu possa parar o teste e
continuar normalmente o fluxo dos dados. Vide abaixo a referida SP
create or alter minha_proc (
ano integer)
returns
( campos a serem retornados )
as
(declaração de variáveis)
begin
for select matricula, nome
from tabela1
into :mat, :nome do
begin
for select mes, sum(valor)
from tabela2
where ano = :ano
and matricula = :mat
into :mes_base, :valor do
begin
if (:mes_base = 1) then
valor_jan = :valor;
if (:mes_base = 2) then
valor_fev = :valor;
if (:mes_base = 3) then
valor_mar = :valor;
if (:mes_base = 4) then
valor_abr = :valor;
...
end
end
end
--
[]'s,
Hélio Oliveira
Bel. Ciência da Computação
Técnico em Contabilidade
e-mail : hpensador em gmail.com
Skype : hpensador
http://hpensador.blogspot.com/
www.hpensador.net
(71) 9975-9176
Mais detalhes sobre a lista de discussão lista