2017-08-09 9 views
1

2つのクエリがあるとします。クエリ結果:中Oracle SQL:選択結果を互いにマージする

| A | B | C | 
    +---+---+---+ 
    | 1 | 5 | 9 | 
    | 2 | 6 | 10| 

とクエリB結果:

| A | B | C | 
    +---+---+---+ 
    | 3 | 7 | 11| 
    | 4 | 8 | 12| 

は取得する方法でステートメントを実行することが可能です:

| A | B | C | 
    +---+---+---+ 
    | 1 | 5 | 9 | 
    | 2 | 6 | 10| 
    | 3 | 7 | 11| 
    | 4 | 8 | 12| 

だろうより簡単な解決策はそれらに参加することですか?または、 ';'私はそれを使用してエラーを取得している2つの選択を分離する。

また、私は文の間UNIONまたはUNION ALLを使用して試してみましたが、それは

を与える

ORA-00933:SQLコマンドが正常に

これは、Excelのマイクロソフトのクエリで行われているが終了していません。

答えて

1

UNION文を使用します。

SELECT * FROM queryA 
UNION ALL 
SELECT * FROM queryB 

WHERE句は各クエリにとどまりますが、ORDER BYは最後まで移動します。

UNIONを使用すると、一番上のクエリの列の名前またはエイリアスが列全体のエイリアスになります。だから最後には、Order By Aのようなものを書いてください。ここで、Aはあなたの最初の列名です。最上位以外のクエリでエイリアスが指定されていないことを確認してください。

関連する問題