2012-04-17 7 views
-2

2つの複雑なSQL文がありますが、どちらも同じ列名を持っています。私はtsql 2つのSELECT文のUNION

UNION 

が、両方の間で労働組合を実行しようとしてい UNIONの近くに不正なシンテックスは述べています。

動作させるために必要なことが他にあるかどうか不明です。私は通常、労働組合のために使用

+0

問題を解決するのに役立つ可能性のある情報を除外して投票を終了したためです。これはそのまま返答することはできません。 – HLGEM

+0

は、おそらくunionの上にある 'order by'sを移動する必要があります。もし列が一致しなければ、あなたは実行時エラーしか得ません。 – dotjoe

答えて

0

構文は次のとおりです。それは排除重複をチェックしませんので、

select * 
from 
(
    (<subquery 1>) 
    union all 
    (<subquery 2>) 
) t 

UNION ALLは、UNIONよりも効率的です。

1

私は常にSQL文をセミコロン()で終了するため、このエラーが発生することがあります。

SELECT c 
    FROM T1; <-- forgot to remove the terminator! 
UNION 
SELECT c 
    FROM T2;