2012-04-22 4 views
0

노조에서 고유 값을 선택해야합니다. 다른 데이터베이스의 여러 테이블에서 유니온을 사용하지 않아도됩니다.복수 노조 후 선택

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNION (SELECT name FROM tab2)' at line 1 

답변

2

당신은 "독특한"사용할 필요 없어요. UNION은 이미 다른 결과를 제공합니다.

SELECT name FROM tab1 
UNION 
SELECT name FROM tab2 

당신이에 대해 다음을 참조 name.Please DB를 사용할 필요가 다른 데이터베이스에서 데이터를 가져하려는 경우, 당신이 올바른 result.By에게 방법을 제공;

SELECT name FROM db1.tab1 
UNION 
SELECT name FROM db2.tab2 
+0

맞습니다. UNION은 고유 값만 반환합니다. –

1
SELECT DISTINCT name FROM ((SELECT name FROM tab1) UNION (SELECT name FROM tab2)) as sth 
2

이 시도 : 난이 오류가

SELECT DISTINCT name ((SELECT name FROM tab1) UNION (SELECT name FROM tab2)) 

: 는하지만 난이 코드를 사용하려고

SELECT DISTINCT name FROM (
    SELECT name FROM tab1 
    UNION 
    SELECT name FROM tab2 
) TABLEALIAS 
0

당신은 FROM 및 내부 결과에 대한 별칭이 필요합니다

SELECT DISTINCT name 
FROM (
    SELECT name FROM tab1 
    UNION 
    SELECT name FROM tab2 
) x 

그러나, 전혀 거기 DISTINCT 필요하지 마십시오 UNION 이미 중복을 제거합니다.