I'd point at the following as being a sterling candidate for being a
cause of this being slow...

 AND cont_publicacion.fecha_publicacion = (SELECT max(cp1.fecha_publicacion) 
                  FROM cont_publicacion cp1  
                  WHERE cp1.id_instalacion = cont_publicacion.id_instalacion 
                    AND cp1.id_contenido = cont_publicacion.id_contenido  
                    AND cp1.generar_vainilla = cont_publicacion.generar_vainilla)     

May I suggest changing it to:

 AND cont_publicacion.fecha_publicacion = (SELECT cp1.fecha_publicacion
                  FROM cont_publicacion cp1  
                  WHERE cp1.id_instalacion = cont_publicacion.id_instalacion 
                    AND cp1.id_contenido = cont_publicacion.id_contenido  
                    AND cp1.generar_vainilla = cont_publicacion.generar_vainilla
                  ORDER BY fecha_publicacion LIMIT 1)

That would get rid of the aggregate that's sitting deep in the query.
-- 
select 'cbbrowne' || '@' || 'libertyrms.info';
<http://dev6.int.libertyrms.com/>
Christopher Browne
(416) 646 3304 x124 (land)

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to