Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/08/2010, 06:44
leif_sk8er
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
Consulta SELECT 2 tablas.

Buenas, queria comentarles una consulta que realizo bien, pero tarda demasiado y puede que no esté optimizada.

Tengo dos tablas, una donde guardo traducciones

traducciones
- ID_SECCION
- ID_ELEMENTO
- TIPO
- IDIOMA
- TEXTO

y otra llamada widget_videojuegos

widget_videojuegos
- ID
- FECHA
- JUGADO
- VOTOS
- CAT
- IMG


El caso es que en la tabla traducciones guardo el nombre del juego en varios idiomas, bajo el TIPO=1. Ademas en esa misma tabla guardo la información /descripcion del juego bajo el TIPO=2

El ID_SECCION es 4 que es el de este widget, y el ID_ELEMENTO es el de cada juego.


Y aqui dejo la consulta que utilizo

Código PHP:
SELECT 
widget_videojuegos
.ID,
 
traducciones.TEXTO AS NOMBRE
(
SELECT traducciones.TEXTO AS INFO FROM traducciones WHERE traducciones.ID_SECCION=AND traducciones.TIPO=AND traducciones.IDIOMA='1' AND traducciones.ID_ELEMENTO=widget_videojuegos.ID), 
widget_videojuegos.CAT
widget_videojuegos.IMG
widget_videojuegos.JUGADO
widget_videojuegos.FECHA 

FROM widget_videojuegos
traducciones 
WHERE traducciones
.ID_SECCION=AND traducciones.ID_ELEMENTO=widget_videojuegos.ID AND 
traducciones.TIPO=AND traducciones.IDIOMA=

Y si le añado al final un ORDER BY RAND() ya si que se me queda bloqueado el localhost :S


COmo se podria optimizar? Tendria que crear algun indice especial también?

Gracias.