0
votes

Comment puis-je séparer plusieurs valeurs d'une colonne via une autre table?

J'ai une table nommée équipe . Chaque enregistrement peut avoir plus d'un membre. Plutôt que de bloquer les membres de la virgule de virgule, j'espère utiliser un tableau séparé pour répondre à l'exigence. ID est clé primaire . xxx

J'ai pensé à créer une table nommée utilisateur . UserID est le pk et TeamID est fk . xxx < p> alors je veux une table parent équipe être capable de référer jim et jack de sa table enfant mais je ne sais pas comment le représenter dans un à de nombreuses relations ... Je sais ci-dessous l'expression n'est pas correct .... xxx

sql

4 commentaires

Vous avez raison de faire une table d'utilisateurs qui répertorie l'équipe de l'utilisateur. Pas sûr que vous avez besoin d'une colonne pour les membres pour chaque équipe. Vous pouvez interroger avec une jointure sur l'équipe et les utilisateurs, puis groupe par l'ID de l'équipe pour obtenir les données.


Pourquoi avez-vous besoin d'avoir des références de table enfant dans la table des parents? Si cette question 1 à de nombreuses relations, il suffit de simplement faire résoudre les (la plupart des) scénarios. Je voudrais donc entendre le cas d'utilisation sur la raison pour laquelle vous voulez avoir des références?


Quelle base de données? Cela semble que cela pourrait être mysql.


Peut-être comme ça: Stackoverflow.com/Questtions/ 17942508 / ...


3 Réponses :


-1
votes

On dirait que vous devez créer une table de cartographie pour représenter l'équipe, la relation membre, qui en ferait une relation plusieurs à plusieurs.

TeamMemberMap - TeamId, MemberId


2 commentaires

Ty pour ton temps! J'ai pensé à avoir une table de mappage mais je ne pouvais pas me référer de équipe à mappage Table de manière unique ... Je pense que j'ai réalisé malentendu. Je n'ai pas besoin de garder la colonne .


Ou comme vous et @pilan a dit, je pourrais utiliser cette table de mappage juste avoir Teamid (FK), Memberid (FK) . Cela fonctionnerait pour moi aussi.



1
votes

(Table) Équipe:

TeamId(FK), MemberId(FK)


0 commentaires

0
votes

Cela signifie en effet de normaliser les données une signification supplémentaire pour fractionner les tables que vos données ne sont pas atomiques à chaque niveau de colonne. Il faut donc normaliser pour éviter les difficultés de retrieie de données.

Table des utilisateurs xxx

Table des membres xxx

requête xxx


0 commentaires