質問

私は次のクエリとSQL Serverで新しいテーブルを作成します。私は、このクエリが動作しない理由を理解することができません。

Query1を:作品

SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2 

QUERY2:んではない仕事。 エラー:Msg 170, Level 15, State 1, Line 7 Line 7: Incorrect syntax near ')'.

SELECT * INTO [NEW_TABLE]
FROM
(
SELECT * FROM TABLE1
UNION
SELECT * FROM TABLE2
)

ありがとうございます。

役に立ちましたか?

解決

あなたは、SQL Serverの派生テーブル用のテーブルの別名を定義する必要があります:

SELECT x.* 
  INTO [NEW_TABLE]
  FROM (SELECT * FROM TABLE1
        UNION
        SELECT * FROM TABLE2) x

"x" は、この例では、テーブルの別名である。

他のヒント

INSERT INTO #Temp1
SELECT val1, val2 
FROM TABLE1
 UNION
SELECT val1, val2
FROM TABLE2

また、試すことができます:

create table new_table as
select * from table1
union
select * from table2
select *
into new_table
from table_A
UNION
Select * 
From table_B

こののみTable_AとTable_Bは、同じスキーマを持っている場合は動作します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top