Ver Mensaje Individual
  #6  
Antiguo 03-06-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 30
jachguate Va por buen camino
bueno, creo que el asunto le está quedando grande a paradox, que supongo que intentará levantar todo a memoria para hacer las operaciones... desconozco sus capacidades de paginación/cache, pero creo que serán nulas o cuando mucho, básicas.

Quizas no es el momento adecuado, pero es hora de comenzar a pensar en migrar a una base de datos de verdad.

También me parece un verdadero pecado tener un XP corriendo sobre 128 MB de ram. En mi experiencia, solo con el sistema operativo y un par de micadas, ya es necesario paginar. Podes intentar establecer un archivo de paginación fijo, muy, muy grande, y mandar a pedir suficientes pizzas para esperar que acabe el proceso.

Otra solución que te queda, es hacerlo "manualmente", recorriendo registro por registro en delphi y almacenandolo en una nueva tabla de resumen.

Sobre la opción que plantee al inicio, con uniones, supongo que también dará los mismos problemas de memoria, pero es cosa de probar... seria algo como:

Código SQL [-]
select q1.Cliente, sum(q1.Credito), sum(q1.Prestamo)
  from (
        select c.cliente, c.credito, 0 prestamo
          from credito
        union
        select p.cliente, 0 credito, p.prestamo
          from prestamo
       ) q1
 group by q1.cliente;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita