머리가 돌인가 봐요... 이제야 이해 했습니다.
왜 alias 를 생각 못 했을까나...
2단계 이상 생각하면 머리가 텅~ 비어 버린다는....
답변 해주신 두분께 감사드립니다.
까막 님이 쓰신 글 :
: questman 님이 쓰신 글 :
: : 답변 감사합니다.
: : view 를 만들기 위해서 join을 했습니다.
: : 여러 table의 join이 같이 이루어 집니다.
: :
: : 푸른솔님의 말씀대로 하면 결과는 이렇게 나옵니다.
: : 날짜 A-table.code_make B-table.client_name A-table.code_saler B-table.client_name
: : -------------------------------------------------------------------------------------
: : 0000 00001 일번회사(생산자) 0002 일번회사(생산자)<--판매자가 와야됨...
: :
: : 제가 원하는 바를 다시한번 더 설명 드리면.....
: :
: : A-Table B-Table(생산자,판매자 같이 등록됨)
: : ----------------- ------------
: : .. ..거래처코드(client_code)
: : ..code_make(생산자) ..거래처명(client_name)
: : .. ..
: : ..code_sailer(판매자) ..
: : .. -------------
: : ..
: : ------------------
: :
: : 얻고자 하는 결과
: : 날짜 A-table.code_make B-table.client_name A-table.code_sailer B-table.client_name
: : -------------------------------------------------------------------------------------
: : 0000 00001 일번회사(생산자) 0002 이번회사(판매자)
: :
: : select A-table.날짜,A-table.code_make(생산자),B-table.client_name(생산자명),A-table.code_sailer(판매자),
: : B-table.client_name(판매자) from A-table
: : left outer join B-table on A-table.code_make(생산자) = B-table.client_name
: : left outer join B-table on A-table.code_sailer(판매자) = B-table.client_name;
: :
: : 자꾸 한곳에만 신경 쓰다보니 저도 헷갈리 네요..ㅠㅠ
:
: 안녕하세요. 까막입니다.
:
: 우선 전제 조건이 필요한데요.
: Code_Make 와 Code_Sailer 가 각각의 필드로 존재하는 거죠?
: 그렇다면 아래처럼 하시면 될겁니다.
:
: SELECT A.Date, A.Code_Make, B.Client_Name, A.Code_Sailer, C.Client_Name
: FROM A-Table A
: LEFT JOIN B-Table B
: ON (A.Code_Make = B.Client_Code)
: LEFT JOIN B-Table C
: ON (A.Code_Sailer = C.Client_Code)
:
: 같은 테이블(B-Table)을 두번 JOIN 을 걸면 이름 충돌이 나니까요.
: 별칭을 줘서 구분을 해줘야 겠죠.
: B-Table 에 대해서 B 와 C 로 별칭을 다르게 줘서 내가 B, C 어디에 접근하려고 하는지를 명확히 구분해 줘야 합니다.
:
:
:
:
: 위대한 단군혼이 살아있는 나라.... 대한민국.
|