> -----Mensaje original----- > De: Francisco Manuel Quintana Trujillo > > Hola, > > Ante todo agradecer la colaboración que me han prestado en el foro. > > Por fin, la consulta, > "delete from observation > where observation_id in (select observation_id from > observation EXCEPT select observation_id from quality)", > terminó no sin antes demorarse 25 horas. > > Tareas por hacer: > - Vacumm. > - Crear las reglas eliminadas. > - Crear la constraint en la tabla quality sobre el campo > observation_id(clave ajena que referencia a la tabla observation). > - Crear un índice en la tabla quality sobre el campo observation_id. > - Seguir insertando datos (todo en este estricto orden porque > los datos no están validados ya se sabe claves duplicadas, > etc... quizás las reglas no las genere ya que puedo > realizarlo al final). > > - Pasar todo al servidor. > - Optimizar la base de datos en el servidor. > > Saludos, Oliver >
Oliver, no dejes de probar cambiar work_mem antes de ejecutar el delete: set work_mem = 1GB; EXPLAIN DELETE FROM observation WHERE observation_id NOT IN (SELECT observation_id FROM quality); Dedicando 1GB para sorts tu consulta original debiera ser mucho más rápida. Saludos, Fernando. -- TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo agradecerán