在不同的表mysql中将一列复制到另一列

时间:2015-07-10 08:17:25

标签: mysql

我编写了以下查询,但它无法正常显示查询中断

update media m ,cities c
    set m.latitude=c.latitude
    where m.cities_id=c.id;

任何人都可以知道上述查询中的错误是什么???

3 个答案:

答案 0 :(得分:1)

有一种替代语法允许在更新中加入,但这是标准的SQL方式。确保内部查询仅返回单个值。

update media
set latitude = (
    select c.latitude from cities c where c.id = media.cities_id
)

答案 1 :(得分:1)

尝试此查询:

UPDATE media m LEFT JOIN cities c on c.cities_id = m.id SET m.latitude=c.latitude;

注意:确保cities_id,id都具有相同的数据类型。

答案 2 :(得分:0)

更新媒体m     INNER JOIN cities c ON m.cities_id = c.id.  SET m.latitude = c.latitude;