将数据库中的某一表中的某一列或者多列的总和复制到另一张表的某一列中

成绩表的字段:xueshenghao,yu,shu,yy均为int类型。学生表的字段:id(int),name(varchar),zongfen(int)。学生表中的id就是成绩表中的学生号(这里可以使用一个外键,但此节暂不涉及外键知识)。需求:将成绩表中每一个人的yu,shu,yy成绩之和相加并复制到学生表中。数据库版本mysql5.5.38

1.子查询的方法:UPDATE xueshengbiao set zongfen = (SELECT chengjibiao.yu+chengjibiao.shu+chengjibiao.yy from chengjibiao where xueshengbiao.id = chengjibiao.xueshenghao);

2.内连接方法:UPDATE xueshengbiao inner join chengjibiao on xueshengbiao.id = chengjibiao.xueshenghao set zongfen = chengjibiao.yu+chengjibiao.shu+chengjibiao.yy;

成绩表 学生表复制前:学生表复制后:

posted @ 2017-08-27 23:16  猎八哥FLY  阅读(701)  评论(0编辑  收藏  举报