2017-11-02 2 views
-3
SELECT * 
FROM (SELECT 1 AS A, 2 AS B) A 
JOIN (SELECT 1 AS C, 4 AS D) B ON A.A = B.C 

출력 즉 두 테이블에서 결과와 B를 포함하는 이유 : -아래 SQL 쿼리

A B C D 
1 2 1 4 
+0

1 = 1입니다. 너는 무엇을 기대 했는가? –

+1

게시물에서 무엇을 찾으려고합니까? 아무것도 잘못 됐어? –

+2

사용중인 dbms에 태그를 지정하십시오. 이 쿼리는 ANSI SQL과 호환되지 않습니다. – jarlh

답변

1

당신이 선택하는 때문입니다 "*". 그게 당신이 단지에서 열을 가지고 "또는"B 선택, 당신의 쿼리의 모양은 원하는 경우 A와 B

에서 모든 것을 갖고 싶어 의미

SELECT A.* 
FROM (SELECT 1 AS A, 2 AS B) A JOIN 
    (SELECT 1 AS C, 4 AS D) B 
     ON A.A = B.C 

또는

SELECT B.* 
FROM (SELECT 1 AS A, 2 AS B) A JOIN 
(SELECT 1 AS C, 4 AS D) B 
    ON A.A = B.C