최근에 MySQL 데이터베이스에서 원하는 쿼리 결과를 얻는데 어려움을 겪었습니다. 문제가 데이터베이스와 관련이 있는지 확실하지 않습니다 또는 실제 쿼리.동일한 기본 키에 여러 외부 키가 연결되어있는 테이블
기본적으로는이 테이블 축구 선수 데이터베이스 :
(player): player_id (primary), playerName
(match): match_id (primary), playerID1, playerID2, playerID3, etc..
가 나는 경기 데이터베이스의 속성을 반환하고 있도록 데이터베이스를 조회 할, 그러나 선수의 이름이 아닌 반환 그들의 신분증.
한 명의 플레이어 만 사용할 수 있지만 다른 플레이어는 사용할 수 없습니다.
SELECT p.Name
FROM `match` m
inner join `player` p on p.player_id=m.playerID1
을하지만 두 번째 플레이어를 추가 할 때, p.Name
는 아직 작동하지 않습니다 playerID1
에 매핑 다음은 코드입니다.
나는 잘 설계되지 않은 데이터베이스를 의심하지만 어떤 권장 사항도 환영합니다!
? 이 경우 player1,2,3과 같은 모든 플레이어를 참여시켜야합니까? – sumit
일치하는 필드를 식별하지는 않지만 질문에 해당하지 않습니다. – mattytommo
IMO p.player는 1 번째 col 즉 player1을 매핑합니다. – sumit