2013-04-25 3 views
0

mySQL에서 두 개의 서로 다른 결과 세트를 결합하여 나란히 표시하려고합니다. # 2 세트MySQL에서 두 개의 결과 집합을 결합하는 방법은 무엇입니까?

NAME PHONE 
ABC  123 
DEF  456 
GHI  789 

결과 - -

MAIL ID  WEBSITE 
[email protected] WWW.JKL.COM 
[email protected] WWW.MNO.COM 
[email protected] WWW.PQR.COM 

지금 내가 원하는 것은 단 하나에 나란히 표시 할이 두 결과 예를 들어 나는 다음과 같이 결과 세트 # 1을 말할 수 관계없이 설정된 결과.

NAME PHONE MAIL ID  WEBSITE 
ABC  123  [email protected] WWW.JKL.COM 
DEF  456  [email protected] WWW.MNO.COM 
GHI  789  [email protected] WWW.PQR.COM 

어떻게해야합니까?

+5

'ABC'가 이메일 '[email protected]'을 (를) 소유하고 있음을 어떻게 알 수 있습니까? –

+0

은 외래 키와 테이블을 연결해야합니다. – Aris

+2

"* 관계없이 *"? 그러나 그들과 "합류"한다는 것은 관계를 의미합니다. 아니면 단지 출력을 위해 프리젠 테이션을 포맷하는 것입니까? (이 경우는 MySQL의 질문이 아니지만 MySQL에 액세스하는 언어의 경우)? – eggyal

답변

2

id가없는 두 테이블간에 조인을 수행해야합니다. 음, 당신은 정말로 이것을 할 수 없습니다. SQL의 테이블은 정렬되지 않으므로 테이블을 링크해야합니다.

뭔가 할 수 있습니다. 그리고 운이 좋다면 효과가 있습니다. 다음은 각 테이블에 행 번호를 추가하고 그 다음에 조인

select t1.name, t1.phone, t2.mail, t2.website 
from (select t1.*, @r1 as r1, @r1 := @r1 + 1 
     from t1 cross join (select @r1 := 0) 
    ) r1 join 
    (select t2.*, @r2 as r2, @r1 := @r2 + 1 
     from t2 cross join (select @r2 := 0) 
    ) r2 
    on t1.r1 = t2.r2 

나는이 가 작동하지 않을 수 것을 강조해야합니다. 테이블 사이에 적절한 조인 키가 필요합니다. 그러나 효과가있을 수 있습니다.

관련 문제