MYSQL使用特定行的值更新所有值

时间:2014-09-15 10:55:32

标签: mysql

我怎样才能实现这样的目标:

更新产品SET description = ((行ID 15的描述))

这意味着所有行都具有相同的产品编号15的描述。

1 个答案:

答案 0 :(得分:1)

在MySQL中,使用join

UPDATE products p cross join
       (select description
        from products
        where rowid = 15
       ) p15
   SET p.description = p15.description;

编辑:

子查询不是必需的。我只是认为它使查询更具可读性。它应该对性能影响最小,因为它可能只返回一行。你可以写成:

UPDATE products p join
       products p15
       on p15.rowid = 15
   SET p.description = p15.description;