2017-04-25 24 views
1

2つのテーブル(Student1、Student2)を結合したいとします。テーブル_nameの列を持つ2つのテーブルを結合する

1 - STUDENT1

| student_code | name | 
-------------------------- 
| 1   | katia | 
| 2   | roger | 
| 3   | ken | 

2 - Student2

| student_code | name | 
-------------------------- 
| 3   | katia | 
| 4   | roger | 
| 5   | ken | 

その後、私はこのようになりますしたいです。

結果

|table_name| student_code | name | 
------------------------------------- 
|Student1 | 1   | katia | 
|Student1 | 2   | roger | 
|Student1 | 3   | ken | 
|Student2 | 3   | katia | 
|Student2 | 4   | roger | 
|Student2 | 5   | ken | 

私は唯一のANSI SQLを使用します。 union allが同様に重複する行をもたらす一方で

答えて

1
select 'Student1' AS table_name,student_code,name from student1 
union 
select 'Student2' AS table_name,student_code,name from student2 

私はあなたがUNIONUNION ALLの違いを知っていると仮定し、unionはユニークなレコードをもたらし、それがUNION PERFORMED ON SETSと同じです。

場合によっては、行を区別する最初の列のために、共用体でも重複が発生します。

+0

感謝を使用することができます!とても役に立ちました。 – hyeon

+0

ようこそ...関連する回答に回答してください。 –

4

あなたは

SELECT 'Student1' AS table_name, student_code, name FROM Student1 
UNION ALL 
SELECT 'Student2' AS table_name, student_code, name FROM Student2 
0
Use UNION ALL statement : 

SELECT 'Student1' as table_name, student_code, name FROM Student1 
UNION ALL 
SELECT 'Student2' as table_name, student_code, name FROM Student2 
関連する問題