Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Mejorar query

Estas en el tema de Mejorar query en el foro de Bases de Datos General en Foros del Web. Hola a todos..... Tengo el siguiente tema: Estoy haciendo una consulta a una bd con mas de 115000 registros y tengo un query que lo ...
  #1 (permalink)  
Antiguo 22/03/2004, 17:00
Avatar de davidMS  
Fecha de Ingreso: abril-2003
Ubicación: Chepe
Mensajes: 202
Antigüedad: 21 años, 7 meses
Puntos: 0
Mejorar query

Hola a todos.....
Tengo el siguiente tema:
Estoy haciendo una consulta a una bd con mas de 115000 registros y tengo un query que lo que hace es tomar las transacciones y sumarlas de esta manera:
Código PHP:
SELECT HIGH_PRIORITY 
  SUM
(`transaction`.`Amount`)
FROM
  transaction
  INNER JOIN user ON 
(transaction.FkCompany_UserId user.User_Id)
  
INNER JOIN company ON (user.FkCompanyId company.Company_Id)
  
INNER JOIN deposit ON (transaction.Transaction_Id deposit.FkTransactionId)
WHERE
  company
.Company_Id '66' AND
  
transaction.FkStatusId '2' 
el problema es el siguiente hay diferentes tipos de transacciones, en este caso el que se ocupa es el de despositos, por eso el inner join de la tabla depositos en transacciones, despues el resultado se tienen que presentar a los usuarios de la compania donde las transacciones queda registrado el usuario, entonces hay que darle el innerjoin user a transacciones y despues innerjoin company a usuarios, para realizar la busqueda por compañia, el problema es, que o como esta estructurado este query y como hay miles de registros, se tomo unos 35seg en procesarlo, algun comentario o consejo para accelerar este query?

estoy usando innoDB de mysql4.0..

de antemano muchas gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:04.