1) 성과가 둘 이상의 사용자 (또는 user_group)와 연결하는 것이 가능해야한다? 대답이 둘 이상의 사용자 인 경우 user_achievement 테이블이 필요합니다. 그렇지 않으면 사용자 ID를 업적 테이블 자체에 넣을 수 있습니다.
2) 업적은 user_group 또는 사용자와 관련이 있습니까? 답변 user_group 인 경우 user_group_achievement 테이블이나 직접 achivement 테이블에 사용자 그룹 ID를 저장하십시오 (첫 번째 질문 참조). 그렇지 않으면 user_achievement 테이블 또는 user_group_achivement 테이블에 사용자 ID를 저장하십시오 (다시 첫 번째 질문).
users
-------
user_id
user_name
groups
-------
group_id
group_name
user_groups
-----------
user_id
group_id
achievments
------------
achievement_id
achievement_name
user_achievements
-----------------
user_id
achievment_id
group_achievements
-----------------
group_id
achievement_id
그래서 사용자 그룹, 사용자 업적 및 그룹 업적간에 많은 관계가 있습니다. 사용자 성과
그것이 또한 걸릴 것에 대한 그룹 모든 그룹에 대한 성과 모든 업적에 대한 사용자 모든 사용자에 대한 모든 성과에 대한 그룹 모든 그룹에서 모든 사용자 :
은 당신이 할 수있는
찾을 조인 그룹 성과와 연관된 모든 사용자를 찾으려면 가입하십시오.
각 그룹마다 업적이 있으며 그 그룹의 사용자 만받을 수 있음을 언급하는 것을 잊어 버렸습니다. 질문이 수정되었습니다. – M1k4
그 대답에 대해서도 편집했습니다. –
나는 스키마를 디자인하는 방법을 보여 주었다. –