sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Por qué el campo de valores múltiples es una mala idea en las bases de datos relacionales?

La principal desventaja es el sesgo de consulta. El fenómeno de que tales bases de datos tienden a diseñarse con un tipo particular de consulta en mente y resultan difíciles de manejar cuando se deben escribir otras consultas.

Supongamos que tiene Estudiantes y Cursos, y modela todo eso para que pueda decir, en una sola fila en una sola tabla, "John Doe toma {Francés, Álgebra, Teoría Relacional}" y "Jane Doe toma {Alemán, Funcional". Computación, Teoría Relacional}".

Eso hace que sea fácil consultar "¿cuáles son todos los cursos seguidos por...", pero trate de imaginar lo que se necesitaría para producir la respuesta a "¿cuáles son todos los estudiantes que siguen Teoría Relacional?".

Intente e imagine todas las cosas que el sistema debería estar haciendo para dar a dicha consulta (si fuera posible escribirla) alguna posibilidad de realizar razonablemente...