0

2つのデータベースに2つのテーブルがあります。テーブルアドレスを持つdb1という名前のデータベース1。テーブル郡を持つ名前db2であるデータベース2。

構造は次のとおりです。

住所:

_id | address | countyID | cityID | stateID | postalCode | countryID

郡:

_id | stateID | countyName

現在、addressesテーブルのcountyIDには郡名があります。私がする必要があるのは、addresses.countyIDにある値を取得し、郡でそれを見つけて、countiesテーブルからcountyIDを選択し、countyIDでaddressesテーブルを更新することです。

最終的に、addresses.countyIDには、countyNameではなくcountyIDが必要です。

ありがとう、どんな助けでも素晴らしいでしょう。私はいろいろなことを試みてきました。簡単に試しWHEREましJOINたが、何も機能していないようです。私はデータベースとしてMySQLを使用しています。

4

2 に答える 2

1

このような意味ですか?

UPDATE DB1 SET COUNTYID =(DB1.COUNTYID =DB2.ID上のDB2内部結合DB1からIDを選択)

DB2のどの列に一致しているかわかりません。質問を読めば読むほど、混乱します。:)

于 2012-05-03T01:05:53.287 に答える
0

選択した結果から新しいテーブルを作成することになりました。

CREATE TABLE AddressesCounties 
SELECT db1.addresses._id, db1.addresses.address, db2.counties._id, db1.addresses.cityID, db1.addresses.stateID, db1.addresses.postalCode, db1.addresses.countryID 
WHERE db1.addresses.countyID = db2.counties.countyName;

これは、実際のデータを変更するよりも、この一時テーブルを作成する方が少し簡単でした。このようにして、SELECTコマンドを実行し、結果を適用する前にテストすることができます。

于 2012-05-03T03:07:33.383 に答える