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

Indices en MYSQL para mejorar rendimiento en busquedas.

Estas en el tema de Indices en MYSQL para mejorar rendimiento en busquedas. en el foro de Mysql en Foros del Web. Tengo unas tablas a las que quisiera que me ayudarais a elegir los indices. Por un lado la tabla de productos (Codigo, nombre, stock, caracteristicas, ...
  #1 (permalink)  
Antiguo 07/06/2011, 16:19
 
Fecha de Ingreso: junio-2011
Ubicación: Alicante
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Pregunta Indices en MYSQL para mejorar rendimiento en busquedas.

Tengo unas tablas a las que quisiera que me ayudarais a elegir los indices.

Por un lado la tabla de productos (Codigo, nombre, stock, caracteristicas, familia, ranking) y por otro lado varias tarifas de precios (Codigo, precio). Son unas 140 tablas de precios por lo que no tiene sentido unirla en una sola tabla (esto es inamovible por que otro programa accede a estos datos).
Stock es un campo que contiene 0 si no hay stock ó 1 si hay stock

Las consultas son las siguientes y todas empezarian igual (select prod.codigo, prod.nombre,prod.stock, prod.caracteristicas,Precios001.precio from prod INNER JOIN Precios001 on prod.Codigo=Precios001.Codigo)
filtrado por familia y ordenados ranking (where prod.familia=1 order by prod.stock,prod.precio)
filtrado por familia y ordenados precio/stock (where prod.familia=1 order by ranking)
filtrado por nombre y ordenados ranking (where nombre like '%texto1% order by ranking)
filtrado por nombre y ordenados precio/stock (where nombre like '%texto1% order by prod.stock,prod.precio)

Uso más consultas, pero si me ayudais a esto ya me hago una idea de los indices.

Que incide puedo crear para filtrar por el campo nombre, ya que son consultas del tipo "where nombre like '%texto1%texto2%' or nombre like '%texto2%texto1%' y ordenado por precio/stock


Gracias por leer y más aun si me ayudas.

Etiquetas: indices, velocidad
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:37.