21/08/2013, 12:08
|
| | | Fecha de Ingreso: febrero-2008
Mensajes: 71
Antigüedad: 16 años, 10 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. |