Hola lista, como estan. Yo me encuentro en estos momentos tratando de mejorar 
la velocidad de las consultas en un sistema.

Mi pregunta, super, pero super novato es la siguiente:

Dentro de un trigger tengo las siguientes líneas que dicen algo así
------------------------------------------------------------------------------------
valor1 := dato1 FROM tabla where codigo=1
valor2 := dato2 FROM tabla where codigo=1
valor3 := dato3 FROM tabla where codigo=1
------------------------------------------------------------------------------------
Como las consultas son sobre una misma fila,¿puedo yo hacer algo como esto?:
------------------------------------------------------------------------------------
valor1,valor2,valor3=dato1,dato2,dato3 FROM tabla where codigo=1
------------------------------------------------------------------------------------
Y ¿debiera esta segunda forma de obtener los datos significar una reducción de 
tiempo en la ejecución del trigger?

P.D.:Todo esto, lo hago, porque desde hace algún tiempo(como 1 semana) el 
rendimiento al realizar un INSERT a bajado considerablemente (es un insert que 
tiene asociado un trigger, que por un seguridad tema de debe hacer varias 
validaciones, hace una semana, el INSERT tomaba un par de segundos, ahora unos 
4 minutos, en una tabla de sólo unos 22 mil registros. No ha habido ningún 
cambio en las condiciones del sistema dentro de la semana, como para haber 
gatillado el problema) 

Equipo con
   - pentium 4 de 3ghz
   - 1,5 de RAM con 700mb de shared_buffers
   - ubuntu 8.4 server edition
   - postgresql 8.3.7

Saludos, espero puedan ayudarme.



      

Responder a