Como se relacionan dos registros de una misma tabla

Dudas sobre cualquier tema relacionado con Access que no tenga cabida expresa en los otros hilos
nano_mad
Nivel 1
Mensajes: 6
Registrado: Mié Dic 22, 2021 8:39 pm

Como se relacionan dos registros de una misma tabla

Mensajepor nano_mad » Jue Ene 20, 2022 1:41 pm

Estoy intentando crear una relacion entre varios registros de una misma tabla, pero no se como se puede hacer por si alguien me puede iluminar un poco.
Me explico:
Supongamos que tengo en una tabla con los registros todos los equipos que juegan una liga: Equipo A, Equipo B, Equipo C, Equipo D...
y quisiera llevar un control donde conste una lista de los encuentros que ha jugado cada equipo con los demás.
Equipo A contra Equipo B
Equipo A contra Equipo C
Equipo A contra Equipo D
Equipo B contra Equipo A
Equipo C contra Equipo D...

No se como encajarlo bien, ya que realmente creo que sería relacionar todos los registros de misma tabla con otra duplicada y usar de enlace entre ellas una auxiliar donde figurasen la combinación entre todos los equipos y un campo donde poner la "X" si ya han jugado, pero claro, hay conbinaciones imposibles o repetidas, el equipo A no puede jugar contra si mismo; si el aquipo A ya ha jugado con el B, no sería necesario volver a poner que el B ha jugado con el A.

Equipo A contra Equipo B ->"" (Pendiente de jugar)
Equipo A contra Equipo C ->"X" (ya ha jugado)
Equipo A contra Equipo D ->"" (Pendiente de jugar)
Equipo B contra Equipo A -> Repetido
Equipo B contra Equipo B -> No tiene sentido
Equipo B contra Equipo D ->"X" (ya ha jugado)
Equipo C contra Equipo D ->"" (Pendiente de jugar)...

Amén si si a ultima hora hay nuevas incorporaciones ¿como se haría?

Agradecería si alguien me puede echar una mano sobre como estructurar el tema ya que estoy un poco perdido.

Avatar de Usuario
Fayad
Colaborador
Mensajes: 482
Registrado: Mié Oct 28, 2015 9:43 pm

Re: Como se relacionan dos registros de una misma tabla

Mensajepor Fayad » Jue Ene 20, 2022 8:32 pm

Hola!

Creo que tu base datos la falta mas campos (Fecha, Partido Ida, Partido vuelta), tabla para los jugadores, tabla de los tipos de competición. etc...

Este ejemplo que dejo, además de ser para manejar la propiedad "OpenArgs" y el evento "al No estar en la lista", viene construido sobre la competición de futbol.
Salu2.

nano_mad
Nivel 1
Mensajes: 6
Registrado: Mié Dic 22, 2021 8:39 pm

Re: Como se relacionan dos registros de una misma tabla

Mensajepor nano_mad » Dom Ene 23, 2022 6:26 pm

Gracias Fayad.

He estado viendo el ejemplo que has colgado pero no es eso exactamente lo que necesito (aunque hay cosas que me vienen muy bien)

Realmente el concepto que quiero estructurar es cuando tengo en una tabla una serie de registros y quiero relacionar dos registros de la misma tabla, por ejemplo:

- La lista de niños de una clase y llevar un control a quienes ya he sentado en la misma mesa (Juanito con Pepito, Manolo con Laura, Marta con Antonio, ...) a lo largo del curso.
- La tipica tabla de los mapas de carretera que me marcan la distancia entre dos capitales de provincia.
- Una lista de medicamentos y saber si reacccionan uno con otro.
- El ejemplo que ponia si un equipo ya ha jugado con otro o no en una liga con solo partida de ida.


Realmente solo necesito un dato en la tabla auxiliar: SI/NO, bien un numero como una distancia, bien/mal,...

Cualquier tipo de estructura me vale: consultas, vba, ... pero necesito que me podais iluminar un poco sobre como se podría hacer (si fuera con algun ejemplo mejor tanto para mi como los que puedan estar en esta misma situación). Gracias

DaniLopez1991
Nivel 6
Mensajes: 224
Registrado: Lun Sep 23, 2019 2:12 pm

Re: Como se relacionan dos registros de una misma tabla

Mensajepor DaniLopez1991 » Mié Ene 26, 2022 1:28 pm

Creo que habria que crear una tabla llamada "ENCUENTROS" o "PARTIDOS" con dos campos mínimo que sea "equipo1" y otro que sea "Equipo2", si quieres que solo tengan 1 encuentro pues estos dos campos han de ser la clave primaria, sino crea un autonumérico. luego relacionar las dos tablas (previamente creando un ID para cada equipo) y ahí en esa tabla guardas si están ya relacionados o no, si se han encontrado alguna vez o no... etc..

quedaria algo asi

Tabla PARTIDOS:
ID(autonumerico) | equipo1 | equipo2|
1 fbc rma 'donde FBC y RMA son IDENTIFICADORES en la tabla de equipos
2 FBC ATB

No se si es lo que tenias pensado... pero es mi idea


Volver a “Cajón de sastre”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado