2016-04-19 19 views
0

私はmysqlであまり専門的ではありません。私は次の問題を抱えていますMySQLでレコードを一致させるために同じプライマリキーを与えることで、2つのテーブルを第3のテーブルにマージする方法

私は2つのテーブルを持っています。

表1:私は私の第二の表の上のレコードのIDを割り当て

ProjectName Proj_Person Year Project1 John 2014 Project2 Sam 2014 Project3 Elizabeth 2014 Project4 Samuel 2014 Project1 John 2015 Project2 Sam 2015 Project3 Elizabeth 2015 Project4 Samuel 2015 Project1 John 2016 Project2 Sam 2016 Project3 Elizabeth 2016 Project4 Samuel 2016

表2:

Project_ID ProjectName PR00001 Project1 PR00002 Project2 PR00003 Project3 PR00004 Project4

私が今やろうとしています、私は私が最終的なテーブルを持つことができるように、最終的にはすべてそのままの制約を維持することにより(表の両方をマージしたいです

Project_ID ProjectName Proj_Person Year PR00001 Project1 John 2014 PR00002 Project2 Sam 2014 PR00003 Project3 Elizabeth 2014 PR00004 Project4 Samuel 2014 PR00001 Project1 John 2015 PR00002 Project2 Sam 2015 PR00003 Project3 Elizabeth 2015 PR00004 Project4 Samuel 2015 PR00001 Project1 John 2016 PR00002 Project2 Sam 2016 PR00003 Project3 Elizabeth 2016 PR00004 Project4 Samuel 2016

が私を助けてくださいすることができ要求:

表3のようにテーブル)この問題があります。どんな種類の助けも非常に感謝しています。

+0

は、なぜあなたは私が組合を利用していたUNION – Rasik

+0

@Rasikを使用していないが、私は3番目の表で望ましい結果を得ていないのです。また、私はそれを取得しているプラ​​イマリキーの列としてProject_IDが3番目のテーブルにある必要があります。 – Amrut

答えて

0

あなただけProjectNameにそれらを結合する必要がありそうです:

select Project_ID, t2.ProjectName, Proj_Person, Year 
from table2 t2 
join table1 t1 on t2.ProjectName = t1.ProjectName 
+0

テーブル1とテーブル2の結果を第3テーブルに課されたプライマリキー制約と組み合わせて、すべてのレコードをテーブル3にダンプする必要があります。 – Amrut

+0

@Amrut 3番目のテーブルに課されたプライマリキー制約は何ですか? – Bohemian

+0

auto_incrementの列です。また、同じプライマリキーを複数のレコードに入れたいと思っているのと同様に、私はそれを併合しようとしています。 'PR00001 Project1のようにJohn 2014 PR00001 Project1 John 2015 PR00001 Project1 John 2016' – Amrut

関連する問題