数据库更新和加入

时间:2014-04-02 08:18:02

标签: mysql

我有一个名为address的数据库,有两个表公司和latlon

每张桌子都有一个道路,街区和建筑物号码。而latlon桌子有拉特隆区。

我想更新公司'如果道路,街区和建筑物No与latlon数据库中的相同,则包括lat lon。

这就是我所拥有的:

UPDATE latlon t
JOIN address a USING (Building, RoadNo, Block)
SET t.lat2 = a.lat, t.lon2 = a.lon
WHERE t.lat2 = '' AND t.lon2 = ''

由于某种原因不起作用。它只是让窗户冻结。 (150k行),当我检查是否有任何更新发生时。什么都没有更新。谁知道为什么?

latlon表:

Building RoadNo Block id lat2 lon2 
123      456    789   1  45.4 58.6

公司表:

CrNo Building RoadNo Block id lat lon
12   123      456    789   1  empty empty

1 个答案:

答案 0 :(得分:1)

我猜这次加入需要很长时间。尝试创建以下索引:

create index address_building_roadno_block on address(Building, RoadNo, Block)