Hola de nuevo mensajeescrito:
Vayamos por partes... no debes de confundir ni mezclar la lógica de programación con la lógica de datos... son cosas completamente distintas... el que hables de CHECK BOX es un concepto de programación que en nada debería influir para tu modelo de BD's... son cosas completamente independientes.
Es un error típico de los programadores hacer un modelo de BD's para "facilitar" la programación, cosa que no debiera ser... pero si hablamos de esto, de hacer "fácil" la programación, lo más simple es que tengas una sola tabla, de esta manera para armar una consulta haces algo como esto:
Código MySQL:
Ver originalWHERE tipo_producto
IN (aquí_pones_la_lista_de_los_checks_seleccionados
)
Esto es lo más fácil desde el punto de vista del programador... insisto, esto no quiere decir que esté bien o que este mal...
Continuando con el ejemplo que ponía en el otro post, imagina ahora que tienes varias tablas, una para frutas y verduras, otra para lácteos y otra para ropa, cada una de ellas con información distinta, para mostrarle al cliente una UNICA vista de los productos, podrías armar una consulta dinámica, haciendo un UNION, es decir, algo como esto:
Código:
consulta = ""
SI combo de frutas ESTA SELECCIONADO ENTONCES
consulta = consulta + "SELECT * FROM tabla_frutas UNION"
SI combo de ropa ESTA SELECCIONADO ENTONCES
consulta = consulta + "SELECT * FROM tabla_ropa UNION"
SI combo de LACTEOS ESTA SELECCIONADO ENTONCES
consulta = consulta + "SELECT * FROM tabla_lacteos UNION"
...
...
en este ejemplo debes tener cuidado de eliminar la última palabra UNION, para que te quede una consulta SQL válida.
Hay muchas otras formas de abordar este problema, tanto desde el punto de vista de programación como de BD's. cualquiera de ellas es perfectamente válida
Saludos
Leo.