我有一个表,名为places,具有200万条记录。在这些记录中,有一个名为 city_name 的列。
在另一个表中,我有2列:city_name
和city_id
。
我的目的是从表位置搜索city_name
,然后将表城市中的相应city_id
插入表位置。
我尝试使用以下内容:
UPDATE places
INNER JOIN cities USING (city_name)
SET places.city_id = cities.city_id
与此有关的问题是它已经起作用,但是我在city_id
字段中有与城市名称不匹配的随机city_id。
我还应该提到,表城市中可能没有相应的城市名称,因此我想忽略不存在的记录。
任何人都可以帮忙。我正在使用phpmyadmin
谢谢
答案 0 :(得分:0)
如果我正确理解了您的要求,解决方案将是
UPDATE places
SET places.city_id = (SELECT cities.city_id
FROM cities
WHERE cities.city_name = places.city_name)