我正致力于为在线学院管理系统生成定制报告并严重困扰,
我有一个名为report
的主表,其中包含10行i,e为1到10的学生。属性为roll
,name
和cs101
[这是主题代码,使用默认值0创建。]
我有另一张表格each_subject_cs101
,其中包含字段roll
,name
和marks
。但它可能没有在这里注册的所有10名学生,比如8名学生在那里(使用第1到第8卷,以使其更简单)。
现在我想要的是report
来自cs101
中存在的学生marks
的{{1}}设置each_subject_cs101
= each_subject_cs101
。
这是一个单一更新声明中的全部内容。
注意:roll no字段是表
的主键MySQL中的查询是什么?
[P.S:实际上所有上述结构都比较复杂并且是动态创建的。我在这里使用别名使其更简单]
答案 0 :(得分:1)
UPDATE report r, each_subject_cs101 escs
SET r.cs101 = escs.marks
WHERE r.roll = escs.roll
UPDATE report r
JOIN each_subject_cs101 escs
ON escs.roll = r.roll
SET r.cs101 = escs.marks;