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

Dudas sobre LIKE y MATCH()

Estas en el tema de Dudas sobre LIKE y MATCH() en el foro de Mysql en Foros del Web. Hola, sé que esto ha salido varias veces pero tansolo quisiera aclarar unas dudas. He hecho lo tipico que se hace en estos casos, usar ...
  #1 (permalink)  
Antiguo 18/10/2008, 03:11
Avatar de xevisoyyo  
Fecha de Ingreso: mayo-2005
Mensajes: 166
Antigüedad: 18 años, 11 meses
Puntos: 1
Dudas sobre LIKE y MATCH()

Hola, sé que esto ha salido varias veces pero tansolo quisiera aclarar unas dudas.

He hecho lo tipico que se hace en estos casos, usar LIKE para una palabra y MATCH() para mas de una, a partir de aquí me salen varias dudas que vosotros por experiencia o conocimientos quizá sepáis aclararme. (el sistema me funciona perfecto en ambos casos)


DUDA 1 -> Ya que con MATCH() no se pueden buscar palabras con menos de 4 letras lo que he hecho es que si solo hay una palabra y esta es de menos de 4 letras uso LIKE y si contiene 4 letras o mas uso MATCH() (esto no me supone un problema simplemente es una linea más de código)

Más de 3 letras MATCH() menos de 3 LIKE

La pregutna es ¿vale la pena? quiero decir con MATCH se supone que es mejor y más rápido ¿no? ¿pero vale la pena hacer esta distinción en el caso de que haya solo una palabra?

DUDA 2 -> Esta está relacionada con la duda anterior. Aunque sea mejor usar MATCH() me gusta más el LIKE en un aspecto y es que aunque pongas palabras incompletas te arroja resultados ('%busqueda%') para mi esto es importante porque muchas veces la gente escribe mal o palabras de nombres complicados y si fallas por una letra o te dejas alguna al final o al principio con MATCH() ya no te arroja el resultado.

Sé que añadiendo IN BOOLEAN MODE y poniendo asterisco al final de la palabra esto se puede solucionar en parte, pero si no lo he entendido mal y por las pruebas que he realizado tan solo se puede poner al final. Hay algún truco o método que pueda usar para que por ejemplo si pongo "agua" me arroje los resultados que contengan la palabra "paraguas", con el LIKE sí ¿y con MATCH()? Por cierto cualquier truco o idea al respecto será bienvenido.

DUDA 3 -> Bueno esta duda es sobre el índice FULLTEXT Es la primera vez que lo he hecho y aunque todo va bien tengo la siguiente duda y es que no sé que es mejor si hacer FULLTEXT busqueda (titulo, keywords) o hacer simplemente FULLTEXT busqueda (keywords) y añadir en las keywords las mismas palabras del titulo lo pregunto porque aunque de esta manera ocupe un poco más tampoco será mucho más ya que los títulos apenas son de 2 o 3 palabras me pregunto si no será mejor y más rápido buscar en una sola columna que buscar en dos. No sé digo yo que si hay 20 palabras clave (keywords) por poner 2 más no pasa nada y quizá eso mejoraría. Esa es mi pregunta. Se aceptan sugerencias.

Perdon por el rollo pero creo que siendo solo dudas y no un problema en concreto es mejor hacerlo así que no abriendo distintos posts para algo que cualquiera con experiencia creo que me podrá aclarar en pocas lineas.

Saludos y gracias
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 23:26.