의 당신은 세 개의 테이블과 같은 구성, 항목, 이벤트 및 시트 이름이 있다고 가정 해 봅시다 :MySQL을 사용하여 세 번째 테이블과의 관계를 기반으로 두 테이블을 조인 할 수 있습니까?
항목
아이디 (INT)
EVENT_ID (int)를
제 (int)를
이벤트
아이디 (INT)
Venue_id (int)를
구성 (INT)
좌석
아이디 (INT)
Venue_id (int)를
구성 (int)를
제 (int)를
Face_value (int)를
나는를 구축하기 위해 노력하고있어 Item 테이블에서 모든 항목을 가져오고 각 항목의 Face Value를 포함하는 MySQL 쿼리. 이를 위해,해야하는 쿼리
- 가 이벤트 테이블에서 해당 항목에 대해 Event.Id
- 에 Item.Event_id 값을 사용하고 일치, 그것은 Event.Venue_id 및 이벤트를 취해야합니다. 구성 및 두 테이블에 동일한 값을 가진 항목 테이블에서 항목을 찾으려면 Item.Section과 같은 섹션에 대해 동일한 값을가집니다. 그런 다음 Face_value를 반환해야합니다.
세 가지 테이블의 정보를 결합하는 방식 때문에이 작업을 수행하는 데 많은 어려움이 있습니다. 그것에 접근하는 방법에 대한 아이디어? 아니면 SQL로 불가능합니까?
감사 톤 :-)이 구문을 선호합니다. 나는 왜 이것이 작동하는지 이해하려고 노력하고 있습니다 - 나는 JOIN의 순서가 중요하다고 가정합니다. mysql은 USING 명령어가 Seat과 Event 테이블에있는 동일하게 명명 된 변수를 참조한다는 것을 알고 있습니까? – Jack7890
다소 중요합니다. USING은 JOIN의 양쪽에 동일한 이름의 C 럼이 있어야합니다. 하지만 쿼리를 다른 순서로 다시 작성할 수는 있지만 Adam Bernier의 설명에 따르면 USING은 편의를위한 것입니다. 방금 나에게 직관적 인 방식으로 썼습니다. – chaos
놀라운 혼란! 나는 방금 MySQL을 배우기 시작했고 방금 한 일을하려하지만 머리 또는 꼬리를 만들 수 없습니다. 나는 아직 완전히 JOIN을 이해하지 못한다. :-) – enchance