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

crear indices correctamente

Estas en el tema de crear indices correctamente en el foro de Mysql en Foros del Web. Uso MariaDB, tengo una tabla con unos 200.000 registros donde tengo varios campos que utilizo para las busquedas seria una tabla mas o menos con ...
  #1 (permalink)  
Antiguo 20/04/2016, 06:51
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 13 años, 10 meses
Puntos: 10
crear indices correctamente

Uso MariaDB, tengo una tabla con unos 200.000 registros donde tengo varios campos que utilizo para las busquedas seria una tabla mas o menos con la siguiente estructura.

perfiles tabla

id
buscando
ciudad
perfil

las consultas que realizo son de los siguientes tipos por ejemplo:
Código MySQL:
Ver original
  1. select count(id)from perfiles where buscando='amistad' and ciudad='cancun' and perfil=1;

la consulta me tarda 0.16s sin indices en el campo quiero saber si es mejorable con los indices.
el campo buscando puede tener 5 opciones y la ciudad pues esta bastante mas repartido.

cree dos indices en ciudad y buscando si repito la consulta me tarda menos 0.14s
pero si quito la ciudad es decir realizo esta consulta:

Código MySQL:
Ver original
  1. select count(id)from perfiles where buscando='amistad' and perfil=1;
la consulta me tarda mas 0.30s usando el EXPLAIN veo que escanea la mitad de la tabla.

Entonces tengo aqui mis dudas si escanea la mitad de la tabla porque tarda mas?
lo que si tengo claro es que el indice en ciudad si deberia crearlo(eso creo tampoco seguro al 100%)pero tengo dudas si en el campo buscando deberia crear un indice.

Algun experto me puedo orientar para saber cuando crear indices.
saludos.

Etiquetas: campo, correctamente, indices, registros, select, 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 20:13.