Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/08/2013, 08:12
Avatar de jlct
jlct
 
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 148
Antigüedad: 12 años
Puntos: 19
Respuesta: MySQL mostrar segun numero de coincidencias

Hola Marea2 lo que buscas lo puedes obtener con la siguiente consulta:

Código MySQL:
Ver original
  1. Select id from usuarios where municipio = 3  
  2. and ((asign1='mate' or asign2='mate' or asign3='mate' or asign4='mate') and (asign1='quim' or asign2='quim' or asign3='quim' or asign4='quim') and  (asign1='biol' or asign2='biol' or asign3='biol' or asign4='biol'))
  3. Select id from usuarios where municipio = 3  
  4. and (((asign1='mate' or asign2='mate' or asign3='mate' or asign4='mate') and (asign1='quim' or asign2='quim' or asign3='quim' or asign4='quim')) or
  5. ((asign1='mate' or asign2='mate' or asign3='mate' or asign4='mate') and (asign1='biol' or asign2='biol' or asign3='biol' or asign4='biol')) or
  6. ((asign1='quim' or asign2='quim' or asign3='quim' or asign4='quim') and (asign1='biol' or asign2='biol' or asign3='biol' or asign4='biol')))
  7. Select id from usuarios where municipio = 3  
  8. and ((asign1='mate' or asign2='mate' or asign3='mate' or asign4='mate') or (asign1='quim' or asign2='quim' or asign3='quim' or asign4='quim') or (asign1='biol' or asign2='biol' or asign3='biol' or asign4='biol'))

aquí no solo se prueban las combinaciones que indicaste (mate,quim,biol), (mate,quim) y (mate), sino que mostrara cuando existan 3 coincidencias, 2 coincidencias y 1 coincidencia.

Espero te sirva, Saludos.