我有以下四个 MySQL 表
Region
RegionId
City
CityId
RegionId
Hotel
HotelId
CityId
HotelRegion
HotelId
RegionId
我正在努力编写一个 UPDATE 语句来从 HotelRegion 表中的数据更新 City 表的 RegionId 字段。
基本上,如何使用正确的 RegionId 更新 City 表,其中 HotelRegion 表中的 HotelId 与 City 表的 CityId 匹配。
这是我目前的 UPDATE 语句
UPDATE City c
SET c.RegionId =
(SELECT DISTINCT(HotelRegion.RegionId) FROM HotelRegion
INNER JOIN Hotel ON Hotel.HotelID = HotelRegion.HotelID
INNER JOIN City ON City.CityId = Hotel.CityId
WHERE City.CityId = 1233)
WHERE c.CityId = 1233
我得到的错误消息是您不能在 FROM 子句中指定目标表“c”进行更新。如果您需要更多信息来帮助回答我的问题,请告诉我