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

Gestion de consultas grandes

Estas en el tema de Gestion de consultas grandes en el foro de Mysql en Foros del Web. Hola Hoy trabajando con un proyecto que me esta sirviendo para aprender a programar, se me ha empezado a complicar una consulta multitabla que tengo, ...
  #1 (permalink)  
Antiguo 16/09/2012, 11:43
Avatar de dryant  
Fecha de Ingreso: agosto-2009
Ubicación: Malaga, Ceuta, España....
Mensajes: 283
Antigüedad: 15 años, 4 meses
Puntos: 10
Gestion de consultas grandes

Hola
Hoy trabajando con un proyecto que me esta sirviendo para aprender a programar, se me ha empezado a complicar una consulta multitabla que tengo, haciendose un poco larga, y eso que solo entran 3 tablas.
Entonces me he puesto a pensar en sitios como eBay o similares, y las consultas interminables que se tienen que crear, por lo que he empezado a pensar en que tiene que haber alguna manera de gestionar consultas con varias tablas de forma que sea mas simple. Algo asi como guardar los datos de una consulta en una tabla temporal para crear una nueva consulta con otra tabla existente e ir seccionando las consultas.
El caso que esto es solo lo que yo he pensado y queria preguntar a los que mas saben (a los que de verdad saben, no como yo que no tengo ni idea :( ...) como se gestionan consultas de, por ejemplo, tiendas online, en las que en una pagina aparecen datos del pedido a la vez que datos del cliente, a la vez que datos de los articulos, etc etc...
Como lo haceis vosotros?
__________________
Tecnología y tutoriales
  #2 (permalink)  
Antiguo 17/09/2012, 09:55
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 11 meses
Puntos: 447
Respuesta: Gestion de consultas grandes

Hola dryant:

El decir que una consulta es "grande" es algo subjetivo... Por ejemplo yo tengo consultas donde involucro de 15 tablas, pero que en realidad son "pequeñas" en cuanto al número de registros y campos involucrados y por lo contrario, tengo consultas de dos o tres tablas donde involucro muchos campos o validaciones complejas que hacen las consultas enormes...

Sin embargo, es muy importante que tengas un adecuado manejo de índices en tus consultas, para que estas no sean tan "pesadas" al momento de ejecutarse en el servidor. Es conveniente que le hagas un EXPLAIN a tus consultas, para verificar el plan de ejecución y descubras si hay alguna forma de optimizarla.

http://dev.mysql.com/doc/refman/5.0/es/explain.html

En lo particular, cuando tengo alguna consulta que implica muchas validaciones, procesamiento o simplemente son muy complejas para hacerlas en una consulta "simple", prefiero utilizar Procedimientos Almacenados. Estos te permiten hacer lo que estás proponiendo, es decir, "partir" tu consulta, aunque esto tampoco implica que los tiempos de respuesta o procesamiento mejoren sustancialmente.

Saludos
Leo.

Etiquetas: gestion, grandes, tabla
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 06:09.