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

Sentencia adecuada para busqueda avanzada

Estas en el tema de Sentencia adecuada para busqueda avanzada en el foro de Mysql en Foros del Web. Hola amigos Supongamos que tengo una base de datos con estos datos cargados: Ahora supongan que estoy buscando: Código: en el campo nombre el valor ...
  #1 (permalink)  
Antiguo 05/12/2013, 12:00
Avatar de indie_rok  
Fecha de Ingreso: mayo-2013
Ubicación: Top of the world.
Mensajes: 85
Antigüedad: 11 años, 5 meses
Puntos: 0
Pregunta Sentencia adecuada para busqueda avanzada

Hola amigos

Supongamos que tengo una base de datos con estos datos cargados:



Ahora supongan que estoy buscando:

Código:
en el campo nombre el valor seleccion
en el campo deporte el valor futbol 
Yo quiero que me arroje los siguientes resultados unicamente
Código:
llegada de la seleccion 1
llegada de la seleccion 2
Estoy ejecutando la siguiente query

Código:
SELECT * FROM videos_subidos WHERE MATCH(nombre) AGAINST ('$nombre') or MATCH(deporte) AGAINST ('$deporte')
Sin embargo la query me arroja lo siguiente

Código:
llegada de la seleccion 1
llegada de la seleccion 2
piojo herrera
Y piojo herrera me lo arroja por que esta en la campo futbol, pero no me lo deberia mostrar por que el nombre no es selección.

Como le hago para limitar las 2 palabras? y que no me arroje el resultado de las 2?

Gracias
  #2 (permalink)  
Antiguo 05/12/2013, 23:33
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Sentencia adecuada para busqueda avanzada

<saludos>
Uhm, y si intentas, en el OR agregar un AND (que obviamente esté contenido en el OR), algo así

Código SQL:
Ver original
  1. SELECT * FROM videos_subidos WHERE MATCH(nombre) AGAINST ('$nombre')
  2. OR( MATCH(deporte) AGAINST ('$deporte') AND MATCH(nombre) AGAINST ('$nombre'))
</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 06/12/2013, 05:29
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: Sentencia adecuada para busqueda avanzada

¿Y si simplemente cambias OR por AND, qué pasa?
Código MySQL:
Ver original
  1. SELECT * FROM videos_subidos
  2.  WHERE MATCH(nombre) AGAINST ('$nombre') AND MATCH(deporte) AGAINST ('$deporte')

Etiquetas: busqueda, campo, select, sentencia
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 07:40.