2009/7/27 Márcio Almeida Bernardino <[email protected]> > > Este é o trecho que fica lento: > > WHILE v_count < arg_bilhetes_a_gerar LOOP > > v_count_bilhetes_gerados := v_count_bilhetes_gerados + 1; > > v_array_numeros_aposta := > fn_gera_num_rand_bilhete(v_jogo_total_numeros_aposta,v_jogo_numero_range_inicial, > v_jogo_numero_range_final, v_sequence_extracao, v_id_primeira_serie, > v_id_primeiro_sorteio); > > RAISE NOTICE 'NUMEROS GERADOS --> %', v_array_numeros_aposta; > > FOR v_record_sorteio IN select * from tb_extracoes_sorteios order by > id limit v_jogo_total_sorteios LOOP > FOR v_record_serie IN select * from tb_extracoes_series order by > id limit v_jogo_total_series LOOP >
Você precisa mesmo fazer esses laços aninhados?? Não tem como fazer uma JOIN dessas duas tabelas apenas com os registros que você quer trabalhar? Eu contei uns 4 laços aninhados. Acho que você deve rever essa sua lógica. Imagino que vai ficando mais lento por que você está fazendo tudo dentro de uma única transação. Roberto
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
