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

[SOLUCIONADO] optimizar búsqueda MYSQL

Estas en el tema de optimizar búsqueda MYSQL en el foro de Mysql en Foros del Web. Hola Compañeros, Estoy intentando optimizar un búsqueda si es posible. Llevo trabajando con mysql un tiempo y me estoy iniciando en el apartado de optimizar ...
  #1 (permalink)  
Antiguo 13/05/2014, 02:03
 
Fecha de Ingreso: mayo-2008
Ubicación: Barcelona
Mensajes: 249
Antigüedad: 16 años, 6 meses
Puntos: 1
optimizar búsqueda MYSQL

Hola Compañeros,

Estoy intentando optimizar un búsqueda si es posible. Llevo trabajando con mysql un tiempo y me estoy iniciando en el apartado de optimizar los recursos.

En este caso me encuentro, estoy optimizando una búsqueda. En ella extraigo de una tabla unos campos de la base de datos. (Id_elemento, Nombre , descripción, id_pais, id_provincia e id_categoria).

Como esta tabla tiene el ID del país, de la provincia y de la categoría después voy a buscar en cada una de esas tablas el nombre del pais, provincia y categoría para mostrarlo en la búsqueda.

Actualmente esto haciendo una primera búsqueda para extraer el id y despues en cada caso hago una búsqueda en la tabla correspondiente

SELECT nombre_pais FROM paises WHERE id_pais LIKE ".$id_pais
(Esto multiplicado por 3)

Me gustaría saber si para este caso vosotros haceis lo mismo o teneis una manera de optimizar para no realizar 4 búsquedas ( La primera y las 3 auxiliares)

Muchas gracias!
  #2 (permalink)  
Antiguo 13/05/2014, 02:44
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: optimizar búsqueda MYSQL

Código MySQL:
Ver original
  1. SELECT t.Id_elemento,
  2.              t.Nombre ,
  3.              t.descripción,
  4.              t.id_pais,
  5.              p.nombre_pais,
  6.              t.id_provincia,
  7.              pr.nombre_provincia,
  8.              t.id_categoria,
  9.              c.nombre_categoria
  10. FROM tuTabla t INNER JOIN paises p ON  t.id_pais=p.id_pais
  11.                          INNER JOIN provincias pr ON t.id_provincia=pr.id_provincia
  12.                          INNER JOIN categorias c ON t.id_categoria=c.id_categoria

Ahora habria que optimizar el WHERE que uses para seleccionar los datos.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 15/05/2014, 05:09
 
Fecha de Ingreso: mayo-2008
Ubicación: Barcelona
Mensajes: 249
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: optimizar búsqueda MYSQL

Muchas gracias Quim,

Me ha sido de gran ayuda!


Etiquetas: optimización
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 11:50.