0

私のデータベースには2つのテーブルがあります。テーブル#1列アドレスとphone2の中テーブル#2のテーブル#1データを確認して更新するにはどうすればよいですか?

テーブル#1

------------------------------------------------------------------------- 
| name | family | phone | email | gender | phone2 | address | birthdate | 
------------------------------------------------------------------------- 

テーブル#2

----------------------------------------- 
| gender | address | phone | birthdate | 
----------------------------------------- 

空と列性別、誕生日の値であるテーブル#2と同じです。

性別と生年月日が各行で同じ場合、テーブル#2のデータを読み込み、テーブル#1のアドレスと電話2をテーブル#2のアドレスと電話列の値で更新するにはどうすればよいですか?例えば

: これは表の#1

------------------------------------------------------------------------- 
| name | family | phone | email | gender | phone2 | address | birthdate | 
------------------------------------------------------------------------- 
| john | doe | 12345| [email protected]| Male |   |   | 1980-01-01| 
------------------------------------------------------------------------- 
| mike | clark | 65432| [email protected]| Male |   |   | 1990-01-01| 
------------------------------------------------------------------------- 
| Sara | King | 875465| [email protected]|Female|   |   | 1970-01-01| 
------------------------------------------------------------------------- 

の中にいくつかのデータであり、ここで2

----------------------------------------- 
| gender | address | phone | birthdate | 
----------------------------------------- 
| Male | 1704test|0457852|1980-01-01 | 
----------------------------------------- 
| Female | 1705abcs|0986532|1970-01-01 | 
----------------------------------------- 
| Male | 1602cyzd|0326589|1990-01-01 | 
----------------------------------------- 

私はテーブルからのデータでテーブル#1を更新したいテーブル#でいくつかのデータであり、 #2、性別や生年月日を確認してテーブル#1を作成する

------------------------------------------------------------------------- 
| name | family | phone | email | gender | phone2 | address | birthdate | 
------------------------------------------------------------------------- 
| john | doe | 12345| [email protected]| Male |0457852 |1704test | 1980-01-01| 
------------------------------------------------------------------------- 
| mike | clark | 65432| [email protected]| Male |0326589 |1602cyzd| 1990-01-01| 
------------------------------------------------------------------------- 
| Sara | King | 875465| [email protected]|Female |0986532 |1705abcs| 1970-01-01| 
------------------------------------------------------------------------- 

どうすればいいですか?

+0

質問をクロスポストしないでください –

答えて

3

JOINを更新ステートメントに使用できます。

UPDATE t1 
SET t1.phone2 = t2.phone, t1.address = t2.address 
FROM table1 t1 
JOIN table2 t2 on t1.gender = t2.gender and t1.birthdate = t2.birthdate 
関連する問題