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

full text busqueda con varias palabras

Estas en el tema de full text busqueda con varias palabras en el foro de Mysql en Foros del Web. Hola necesito hacer una consulta sql con match pero pasarle como parametro a match varias palabras donde tiene que buscar alguna de las palabras pasadas, ...
  #1 (permalink)  
Antiguo 21/11/2013, 04:37
 
Fecha de Ingreso: enero-2011
Mensajes: 1.150
Antigüedad: 12 años
Puntos: 10
full text busqueda con varias palabras

Hola necesito hacer una consulta sql con match pero pasarle como parametro a match varias palabras donde tiene que buscar alguna de las palabras pasadas, no se si esto es posible o pongo la consulta de ejemplo pasandole un solo parametro a match.

Código MySQL:
Ver original
  1. SELECT *, MATCH ( campo) AGAINST ('valor') as relevancia
  2. FROM tabla
  3. MATCH ( campo) AGAINST ('valor')
  4. ORDER BY relevancia;

Última edición por azaz; 21/11/2013 a las 04:45
  #2 (permalink)  
Antiguo 21/11/2013, 06:10
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Bueno ya lo solucione simpremente es usar OR, pero tengo ahora otra duda, porque no me funciona esta consulta, bueno no me da error pero me dice que 0 resultados cuando si que deberia haber un resultado.

Código MySQL:
Ver original
  1. SELECT trabajador FROM empresa WHERE trabajador like '*jose*';
  #3 (permalink)  
Antiguo 21/11/2013, 06:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 15 años, 2 meses
Puntos: 2658
Respuesta: full text busqueda con varias palabras

Porque el asterisco (*) no es un caracter comodín... en ningún DBMS.
Código MySQL:
Ver original
  1. SELECT trabajador FROM empresa WHERE trabajador LIKE '%jose%';
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 21/11/2013, 06:21
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Hola gnzsoloyo, sabia que era despistado pero no tanto, yo leyendo el manual haber si era debido a lal estructura de la tabla o algo y resulta que era que me confundi en eso que ya sabia que era asin y no me di cuenta, bueno gracias.
  #5 (permalink)  
Antiguo 21/11/2013, 12:03
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Hola tengo la siguiente duda, en un SELECT que utiliza LIKE puedo utilizar IN para indicarle mas valores de busqueda, o la unica manera de añadirle mas valores de busqueda es con OR, algo como esto:
Código MySQL:
Ver original
  1.       trabajador
  2.      empresa
  3.     trabajador  LIKE '%jose%'
  4.    trabajador  LIKE '%ana%'
  5.    trabajador  LIKE '%sonia%'
  6.    trabajador  LIKE '%pedro%'
  7.    trabajador  LIKE '%susana%'
saludos
  #6 (permalink)  
Antiguo 21/11/2013, 12:12
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 15 años, 2 meses
Puntos: 2658
Respuesta: full text busqueda con varias palabras

En ese contexto no aplica el IN(), porque el IN() no opera como ni con LIKE. Los valores de la lista deben ser valores concretos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 21/11/2013, 12:26
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Gracias por la aclaracion gnzsoloyo, un saludo.
  #8 (permalink)  
Antiguo 21/11/2013, 16:48
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Perdonar nuevamente que vuelva a este post pero tengo otro problemilla sin poder encontrar una solucion, partiendo de esta consulta con match.

Código MySQL:
Ver original
  1. SELECT *, MATCH ( campo) AGAINST ('valor') as relevancia
  2.     FROM tabla
  3.     WHERE
  4.     MATCH ( campo) AGAINST ('valor')
  5.     ORDER BY relevancia;

como puedo hacer que no me muestre los registros en el campo id por ejemplos estos: 11,34,32. que estan en el campo id.

Algo como distinct, pero no se como aplicarlo al match, alguna ayuda.
Saludos.
  #9 (permalink)  
Antiguo 21/11/2013, 17:00
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 15 años, 2 meses
Puntos: 2658
Respuesta: full text busqueda con varias palabras

Código MySQL:
Ver original
  1. SELECT *, MATCH ( campo) AGAINST ('valor') relevancia
  2. FROM tabla
  3.     MATCH ( campo) AGAINST ('valor')
  4.     AND id NOT IN(11,34,32)
  5. ORDER BY relevancia;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 21/11/2013, 17:24
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: full text busqueda con varias palabras

Hola gnzsoloyo gracias nuevamente, saludos.

Etiquetas: busqueda, campo, full, palabras, select, sql, tabla, text
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 02:55.