Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/08/2013, 12:08
Avatar de Marea2
Marea2
 
Fecha de Ingreso: febrero-2008
Mensajes: 71
Antigüedad: 16 años, 2 meses
Puntos: 0
MySQL mostrar segun numero de coincidencias

Hola a todos,

Dispongo de una base de datos MySQL en la que tengo profesores particulares registrados. Quiero hacer una consulta en la que introduciendo el municipio en el que vive el alumno y las asignaturas que quiere hacer, se muestren los 'id' de los profesores que viven en el municipio y que dan estas asignaturas.

La base de datos consta de los siguientes campos: 'id', 'municipio', 'asign1', 'asign2', 'asign3' y 'asign4'.

El problema surge en este punto:

En la consulta no solo busco los profesores que den exactamente las 4 asignaturas que quiere el alumno, sino que me gustaría que salieran los profesores que dan 3 de estas 4 asignaturas, y después 2 de estas 4 asignaturas, hasta llegar a los que dan 1 de estas 4 asignaturas. Esto es, que la consulta ordene las 'id' de los profesores según el numero de asignaturas coincidentes, empezando por los que coinciden 4 de 4, hasta los 1 de 4.

He intentado hacerlo usando combinaciones de AND y OR, pero no lo he logrado. He leído acerca de la función MATCH, pero no lo acabo de ver .

Os agradecería si pudierais indicarme como puedo hacer-lo.

Muchas gracias de antemano.
__________________
www.chuletacreator.com "Copia con estilo"