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

al hacer un inner join de varias tablas, el orden tiene importancia?

Estas en el tema de al hacer un inner join de varias tablas, el orden tiene importancia? en el foro de Mysql en Foros del Web. siempre me he preguntado si al hacer un inner join de varias tablas, el orden en q las agrupo si tien importancia. Sobretodo si hay ...
  #1 (permalink)  
Antiguo 03/03/2007, 06:25
 
Fecha de Ingreso: agosto-2006
Mensajes: 316
Antigüedad: 17 años, 8 meses
Puntos: 0
al hacer un inner join de varias tablas, el orden tiene importancia?

siempre me he preguntado si al hacer un inner join de varias tablas, el orden en q las agrupo si tien importancia.

Sobretodo si hay tablas muy grandes o como en este caso tengo clausuals where


SELECT substances.Reference, sentences.SentenceName
FROM substances inner join
(sentencecodes inner join sentences
on sentencecodes.SentenceRef = sentences.SentenceRef)
on substances.Reference = sentencecodes.Reference
where sentences.LanguageCode = '4' and sentencecodes.DisplayOrder = '0'
  #2 (permalink)  
Antiguo 03/03/2007, 08:00
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 9 meses
Puntos: 24
Re: al hacer un inner join de varias tablas, el orden tiene importancia?

Por suerte existe un componente en el motor de la base de datos, llamado Optimizador, el cual se encarga de rearmar la consulta, de manera que su ejecución sea lo más eficiente posible.

Por suerte este componente funciona bastante bien. Pero en general, es recomendable que nosotros optimicemos una consulta, y que el optimizador no tenga tanto trabajo.

Para optimizar las consultas, se deben colocar las restricciones lo antes posible, y las proyecciones luego. De esta manera, si tenemos una tabla muy grande, probablemente la restricción o la proyección reduzcan drásticamente el tamaño de la tabla, y el proceso posterior de esta será mucho menos costoso.

Saludos
  #3 (permalink)  
Antiguo 03/03/2007, 17:27
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Re: al hacer un inner join de varias tablas, el orden tiene importancia?

El hado padrino optimzador que mencionas es propio de mysql?
  #4 (permalink)  
Antiguo 03/03/2007, 18:22
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 9 meses
Puntos: 24
Re: al hacer un inner join de varias tablas, el orden tiene importancia?

Si tu duda es que si está presente solo en MySQL, la respuesta es NO. EL optimizador es un concepto del modelo relacional de base de datos. Cualquier motor de BD que anuncie ser relacional (el 99% de los presentes hoy en día), debería tener implementada esta función. Pero como es de suponerse no todos lo hacen.

Se que en MySQL esta presente, al igual que es Posgre y SQL Server, del resto no sabría decirte.

Saludos
  #5 (permalink)  
Antiguo 16/03/2007, 11:45
 
Fecha de Ingreso: agosto-2006
Mensajes: 316
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: al hacer un inner join de varias tablas, el orden tiene importancia?

Cita:
Iniciado por TolaWare Ver Mensaje
Para optimizar las consultas, se deben colocar las restricciones lo antes posible, y las proyecciones luego. De esta manera, si tenemos una tabla muy grande, probablemente la restricción o la proyección reduzcan drásticamente el tamaño de la tabla, y el proceso posterior de esta será mucho menos costoso.

Saludos
perdon pero no se muy bien q es una restriccion y una proyeccion.

me podrias dar un ejemplo?
  #6 (permalink)  
Antiguo 11/10/2007, 15:10
Avatar de johnnygomez  
Fecha de Ingreso: octubre-2007
Mensajes: 166
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: al hacer un inner join de varias tablas, el orden tiene importancia?

Hola yo tengo un problema haciendo en SQL una consulta que incluyen 3 tablas gigantescas y que siguen creciendo, estas son para un video club, tengo VIDEOS, GENEROXVIDEO y COPIAS, osea, copias tiene el identificador de video, como asi generoxvideo, creo que es obvio como estan ordenadas, la cosa es que si quiero levantar informacion de videos que cumplan una caracteristica de generoxvideo y otra de copias, se me cuelga bastante, estoy en php, como puedo hacer para mejorar esto?
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 09:07.