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

Optimizar tiempo de respuesta de una consulta SQL

Estas en el tema de Optimizar tiempo de respuesta de una consulta SQL en el foro de Mysql en Foros del Web. Hola estoy trabajando en myslq, y tengo la siguiente consulta Código: EXPLAIN SELECT COUNT(p.tipo) FROM sinregistrar s, planificar p WHERE p.iddato = s.iddato AND p.fecha ...
  #1 (permalink)  
Antiguo 22/09/2008, 15:02
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 3 meses
Puntos: 0
Optimizar tiempo de respuesta de una consulta SQL

Hola

estoy trabajando en myslq, y tengo la siguiente consulta
Código:
EXPLAIN SELECT COUNT(p.tipo) 
FROM sinregistrar s, planificar p
WHERE p.iddato = s.iddato
AND p.fecha <= DATE_SUB( CURDATE( ) , INTERVAL 0 DAY ) 
AND p.tipo=s.tipo
AND s.iddato = 3
pero la se desmora mas de un minuto en arrojar el resultado, y en algunos casos se queda pegado infinitamente.

probe con el explain para ver como ejecuta la consulta.
Código:
id  select_type  table  type  possible_keys  key  key_len  ref  rows  Extra  
1 SIMPLE s ALL NULL NULL NULL NULL 14501 Using where 
1 SIMPLE p ALL NULL NULL NULL NULL 44377 Using where
Si alguien me puede ayudar o explicar poruqe sucede esto.
las tablas sinregistrar y planificar poseen 14.501 y 44.377 registros respectivamente.

Desde ya gracias



saludos
  #2 (permalink)  
Antiguo 22/09/2008, 15:24
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 1 mes
Puntos: 45
Respuesta: Optimizar tiempo de respuesta de una consulta SQL

Hola
Usa Joins, y considera que tus campos dentro del where sean indices.

Cita:
DATE_SUB( CURDATE( ) , INTERVAL 0 DAY )
NOW() esto te dará el mismo resultado

Saludos!
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
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 16:37.