1
나는 SQL을 배우는 방법과 일대 다 관계에 두 테이블에 대한 쿼리를 작성하는 방법을 알아 내려고.오라클 SQL 쿼리 하나, 많은 행을 하나의 행 결과로 복수 선택
Table1
는 개인 정보를 가지고 : (PersonId, FirstName, MiddleName, LastName)
및 table2
는 (PersonId, Phone, PhoneType)
있다. 여기
select Table1.PERSON_ID,
Table1.FIRST_NAME,
Table1.MIDDLE_NAME,
Table1.LAST_NAME,
Table2.PHONE_NUMBER
from Table1
inner join Table2
on Table2.PERSON_ID = Table1.PERSON_ID
where Table2.PHONE_TYPE in ('BUSINESS','PERSONAL','HOME')
는 내가
1 John Carter Jones 111-111-1111
1 John Carter Jones 111-111-1112
1 John Carter Jones 111-111-1113
을 얻을
내 쿼리에서Table1
PERSON_ID FIRST_NAME MIDDLE_NAME LAST_NAME
1 John Carter Jones
Table2
PERSON_ID PHONE_NUMBER PHONE_TYPE
1 111-111-1111 HOME
1 111-111-1112 PERSONAL
1 111-111-1113 BUSINESS
테이블 나는 다음과 같은 결과를 달성하고자하는이 내 쿼리입니다
1 John Carter Jones 111-111-1111 111-111-1112 111-111-1113
도움을 주시면 대단히 감사하겠습니다.
그냥 SQL을 배우기 시작하는 경우, 내가 강하게 회전과 같은 성가신 속임수로 시작하지하는 것이 좋습니다 것입니다. ;-) 그러나 수행 할 수는 있지만 이전에 SQL로 작업 한 적이 없다면 쉽지 않습니다. – Tyron78
피벗 (pivoting)에 관해서는 다음을 참조하십시오. http://www.oracle.com/technetwork/articles/sql/11g-pivot-097235.html – Tyron78