mysql - 如何使用mysql同时更新多行

标签 mysql

我有一个名为 family 的表,其中包含一个名为 power 的列。我想通过在每一行中添加一个来更新功率的最大十个值,其余部分保持不变。我尝试自己的方法,创建另一个表,其中包含我想要更新的最大十个值并在下面创建查询,但遇到了一些问题。这是查询:

UPDATE family
  SET family.total = (SELECT totalmax.total FROM totalmax 
    INNER JOIN  familyone
    ON family.family_id2 = totalmax.family_id2
    WHERE family.family_id2 = totalmax.family_id2)

有人可以告诉我这个查询的问题出在哪里吗?还有其他方法可以解决我的问题吗?

最佳答案

您可以通过联接来做到这一点

UPDATE  family
INNER JOIN
        totalmax
ON      family.family_id2 = totalmax.family_id2
SET     family.total = totalmax.total

关于mysql - 如何使用mysql同时更新多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19158332/

相关文章:

mysql - Django-Mysql数据迁移

MySQL 子查询优化

php - 如何将 codeigniter 数据库的数据与 wordpress 数据库同步?有可用的 API 吗?

php - Magento 1.1.2 在数据库中哪里存储订单?

MySql 在具有重复节点的闭包表中对分层数据进行排序

mysql - 为什么我不能使用 Thinking Sphinx 建立索引?

php - 过滤搜索查询的最佳方法是什么 - PHP MySQL

mysql - 查询以选择以特定字符结尾的字符串

mysql - 使用电子邮件创建新用户作为软删除用户

MySQL 150 : Foreign key constraint is incorrectly formed