Access - Consultas en tablas intercepto

   
Vista:

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 13/10/2017 21:15:54
Hola comunidad, tengo un inconveniente, y es que al tratar de obtener los datos de una consulta, no puedo, pienso que la forma de relaciones de mis tablas están bien, y a continuación explico

Se trata de de dos tablas, pero como al relación es de muchos a muchos, nace una tercera tabla, una tabla intercepto, esto es debido a que, existe una tabla llamada marcas y otra llamada categorías. La tabla marcas, puede tener muchas categorías o líneas de productos, pero a su vez, una categoría puede estar asociada a varias marcas.

Ejemplo, un marca puede ser Dulces El mejor, y este tiene las siguientes categorías o lineas, galletas, chocolates y vasitos, podemos ver que tiene 3 lineas, pero luego existe un una marca, que se llama, Dulces La esperanza, este tiene solo una linea, Galletas; si yo elijo dulces la esperanza, este me va mostrar el que este tiene asociado, pero si creo un consulta para saber que lineas no tiene dicha marca, el resultado es nulo o simplemente no me muestra nada, ya que , dado el caso, el dia de mañana, esa empresa cree otra linea de productos y deba agregarse, pues deberá poder hacer esa operación.

La idea, es si seleccionó, una marca esta me muestre que categorías están asociadas(cosa que ya hago), y cuales no están asociadas a esta, y si elijo una categoría, poder ver, cuales marcas, están asociadas y cuales no.


mSDyqJs
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Consultas en tablas intercepto

Publicado por Anonimo (682 intervenciones) el 13/10/2017 21:30:18
Simple curiosidad, ¿Por qué la tabla que denominas como 'intercepto' utiliza los nombres para generar las combinaciones?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 13/10/2017 23:54:33
No logro entender, habla de que utilizo la tabla intercepto para poder crear la consulta? si es eso, y estoy mal en lo que hago podrias explicarme, como seria
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por Anonimo (682 intervenciones) el 14/10/2017 04:39:23
Normalmente (y esa acostumbra a ser su finalidad) para conjugar los elementos se utilizan sus Identificadores únicos y esos son los datos que deberían figurar en la tabla intermedia, además de una regla que impidiera que se repitiese la misma combinación.

Ya en la consulta, tomaría a las tres tablas, de ellas los campos que me interesaran (por supuesto los IDs serian los de la tabla intermedia) y seleccionado un ID de categoría (utilizándolo como parámetro de filtro) obtendría las marcas relacionadas y si seleccionase una marca las categorías asociadas.

Si bien se pueden utilizar las descripciones (no se que sentido tendrían los IDs) el rendimiento seria inferior, ya que las maquinas prefieren los números sobre las letras en igualdad de condiciones (casos como este por ejemplo)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 14/10/2017 04:59:47
Leyéndote, se me ocurrió algo, podre tener tres listas en un formulario, una las marcas, otra que me muestre la tabla intercepto, donde están, las relaciones asignadas en la tabla intercepto, y una lista donde estan las categorías, la cual, se filtraría mostrando las categorías que no estén en la lista de cruce de datos.

Disculpa podrias mostrarme un ejemplo de como crear una regla de que no se repita una combinación, te lo agradeceria, gracias de ante mano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por Adrian (32 intervenciones) el 14/10/2017 05:46:36
Prueba esto, por mas que solo utilices la tabla intercepto en la consulta, añade las otras dos a la consulta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 15/10/2017 00:18:56
oy a ver si hago lo que dijo primero el otro usuario, unir las tablas por sus llaves primarias como tal, y luego el agrego esto que tu dices, puede resultar, disculpa, si puedes crear un ejemplo de lo agradezco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 15/10/2017 00:52:24
Disculpa eso lo hice, y sigo obteniendo lo mismo, voy a tratar de explicarte a ver que se te ocurre:

Tengo las tres tablas arriba en la pregunta creadas, y por cada una de ellas creo uno lista, y quiero, que suceda lo siguiente

Lista con las marcas

Lista con las categorias

Lista donde se interceptan, las categorías y las marcas.

Si yo doy click a una marca en la lista marcas, debería ocurrir el filtro en al lista de la tabla intercepto, lo cual me ayuda a identificar que lineas o categorías de productos tiene dicha marca, y quiero que en la lista de categorías, aparezca aquellas que no están relacionadas con esa marca.

Lo mismo al seleccionar la categoría, que filtre por esta, lo logro, el problema esta es en filtrar la lista de las marcas, para saber cuales no están relacionadas con la categoria seleccionada.

Espero me entiendas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por Anonimo (682 intervenciones) el 14/10/2017 11:24:04
Como crear la regla (que se la puede llamar y utilizar como 'Indice')

.- Tabla en modo diseño
.- Menú superior : índices (su ubicación exacta depende de la versión, pero 'esta/existe' en todas)

.- como nombre de índice: el que se desee
.- en la columna campos: todos los que intervengan (solo los necesarios e indispensables)
.- ordenación: para esto no es precisa ninguna

Seleccionada la línea que tiene el nombre del índice, en la parte inferior aparecen sus propiedades (las del índice)

.- Principal: es opcional, si se le activa los campos serán llave
.- Unico: SI (es lo que nos interesa)
.- Omitir nulos: no afectara a la condición, pero un 'si' puede facilitar su manipulación

Consejo: NO DEJAR líneas vacías entre los campos (para que los utilice en conjunto), una línea vacía (o mas) y tras ella otra que comience con un nombre (+ sus respectivos campos) implicara la creación de otro índice ... y otro ...(para otros usos con esa u otras tablas y campos)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por pedro (54 intervenciones) el 15/10/2017 00:35:24
Gracias, pero aun sigo con el problema de que no obetengo lo que deseo a traves de la consulta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas en tablas intercepto

Publicado por Anonimo (682 intervenciones) el 15/10/2017 03:33:32
Lo que denominas 'tabla intercepto' no es algo nuevo, es el medio que se utiliza para lograr relaciones de varios a varios (entre otras cosas) y tiene un defecto: FUNCIONA (cuando se hace de forma correcta).

Así que el problema no esta en esta parte, sino en el uso que se pretende hacer de ello y eso (el uso y lo que se espera conseguir) es lo que tendrás que aclarar (exponiendo la SQL real) para poder analizar donde esta el fallo.

En definitiva:

.- De que datos se parte realmente
.- Que se pretende obtener
.- Que método se esta aplicando para obtenerlo (la SQL utilizada)
.- los resultados (sean o no correctos o diferentes a lo deseado) que se están obteniendo (para apreciar las diferencias y sus causas)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar