0

我在两个数据库中有两个表。名为 db1 的数据库 1 具有表地址。数据库 2 名称为 db2,具有表县。

结构如下:

地址:

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

县:

_id | stateID | countyName

当前,addresses 表中的countyID 具有县名。我需要做的是获取addresses.countyID 中的值,在counties 中找到它并从counties 表中选择countyID,然后使用countyID 更新addresses 表。

最终结果,addresses.countyID 需要有countyID 而不是countyName。

谢谢,任何帮助都会很棒。我一直在尝试各种事情。我尝试了简单WHEREJOIN但似乎没有任何效果。我使用 MySQL 作为我的数据库。

4

2 回答 2

1

你的意思是这样的吗?

UPDATE DB1 SET COUNTYID =(在 DB1.COUNTYID=DB2.ID 上从 DB2 INNER JOIN 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 回答