插入问题(向新行添加值)

时间:2017-09-17 14:33:41

标签: mysql

我是MySQL新手(目前正在测试MySql Workbench)。

我创建的是两个表(第一个Team_information,其中包含诸如Member_ID,Member_name,Team_manager之类的列)

我想要做的是将Team_manager信息添加到同一方案的另一个(Monthly_review)表中(其中也包含上述列)。

使用以下声明:

Insert Into Monthly_review (Team_manager)
    select Team_manager
    FROM Team_information
    where Member_Name = 'Silvia Ivanova" and Member_ID = 17;

请注意,上述值(Silvia Ivanova和会员ID均在两个表格中添加" team_information"以及" Monthly_review")。

执行查询后会发生什么 - 我得到了团队经理的名字,但遗憾的是不在会员ID 17所在的同一行,但是它被添加到新的。

我做错了什么?

非常感谢提前。

换句话说。

我想:

仅在满足特定条件时才将数据从一个表插入另一个表。

另一个例子: 在表格#34; Team_information" ' Silvia Ivanova'对应于Member_ID' 17'以及团队经理Ivan Petrov' 。 (当然,我有其他行,不同的人有不同的ID和不同的团队经理)。

在" Monthly_review"我有' Silvia Ivanova"她对应于member_id 17(作为第一个表)。我在这里有一个空白列" Team_manager",我想根据会员ID号添加团队经理的姓名。

希望这会有更多的亮点。

再次,非常感谢您的耐心等待。

1 个答案:

答案 0 :(得分:2)

我相信您需要update而不是insert

update Monthly_review mr join
       Team_information ti
       on ? = ?
    set mr.Team_manager = ti.team_manager
    where ti.Member_Name = 'Silvia Ivanova' and ti.Member_ID = 17;

目前尚不清楚join条件应该是什么。如果我不得不猜测ti.Member_Id = mr.Member_Id