mysql - 使用公共(public)列上的条件从另一个表更新表

标签 mysql sql

我是 Mysql 新手。我有一个最多包含 3 个子项的父表,我只想根据条件更新另一个子表中的第一个子项。

TblChild

id_child - parent_id - child_name - child_number 

TblParent

Id_paretn - parent_name - child_name_1 - child_id_1 - child_name_2 - child_id_2 - child_name_3 - child_id_3  

查询

UPDATE TblParent
SET TblParent.child_name_1 = TblChild.child_name, 
    TblParent.child_id_1 = TblChild.child_id 
FROM TblChild, TblParent
WHERE TblParent.id_parent = TblChild.parent_id 
  AND TblChild.child_number = '1';

感谢您的宝贵时间。

最佳答案

在 mysql 中你可以使用更新连接

UPDATE TblParent
INNER JOIN TblChild ON  ( TblParent.id_parent = TblChild.parent_id 
                            AND TblChild.child_number = '1')
SET 
TblParent.child_name_1 = TblChild.child_name, 
TblParent.child_id_1 = TblChild.child_id 

关于mysql - 使用公共(public)列上的条件从另一个表更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42655556/

相关文章:

php - 如何向mysql php结果添加增量

php - INSERT INTO 表值 - mysql_query 到 PDO

php - 不是唯一的表/别名(codeigniter)

mysql - 查询列中每个值的总和

python - 尝试将 SQL 查询转换为 SQLAlchemy 查询

mysql - 如何检索添加到数据库表中的行?

mysql - 为什么我们应该将外键定义为数据透视表中的主键?

mysql - 内部连接与数据透视条件 sql

Sql 异常 '@errno' 附近语法不正确

php - 准备好的声明