2011-11-08 7 views
0

私は現在、データベース内に同じ列を持つ2つのテーブルを持っています。 内部のデータは異なりますが、それらを1つのテーブルに組み合わせてクエリを行う必要があります。どのように私はお互いを上書きすることなく2つのテーブルを選択できますか?

私はジョインで試しましたが、どういうわけか私はそれが他のものを上書きすることになります。

+0

結果データはどこに必要ですか?すべてのデータを1つから別のデータに移動するか、3番目のテーブルのすべてのデータに移動しますか? – CyberDude

答えて

1

と一致することを選択を精緻化する必要があり、このようなあなたの最初のテーブル:

CREATE TABLE customer 
(First_Name char(50), 
Last_Name char(50), 
Address char(50)); 

と(同じフィールドを持つ)2番目のテーブルのように:

CREATE TABLE customer2 
(First_Name char(50), 
Last_Name char(50), 
Address char(50)); 

あなたはこのようなUNION文を望みます

SELECT * from customer 
UNION 
SELECT * from customer2; 

もちろん、SELECT *ではなく、特定のフィールドを選択することができます。

0

joinを使用する場合は、 "duplicate"列のエイリアスを追加する必要があります。何かのように

a.mycolumn as column, b.mycolumn as column2 
0

SQL AS」にチェックを入れてください。 幸運

0

を参照してください。

SELECT a.id AS id1, b.id AS id2 FROM table_1 a INNER JOIN table_2 b 
1

あなたは、彼らが1にあったかのように両方のテーブルからデータを取得したい場合は、UNIONを使用するようにしてください:
SELECT * FROM tab1
UNION
SELECT * FROM tab2

注:両方のテーブルがまったく同じ列を持っている場合にのみ機能します。そうしないと、

は、あなたが作成したとしましょうあなたがUNIONをやりたい...あなたは参加したくない列

関連する問題