使用内部联接后出现了一些问题,这是我的查询
> insert into total(ID,Grade) select midsemester.ID,(midsemester.grade +
> endsemester.grade) as total from midsemester inner join endsemester on
> midsemester.ID = endsemester.ID
这是表:
表名:学期
证件等级
1 10
2 30
3 40
表名:学期末
证件等级
1 30
2 40
3 20
我需要将这些表汇总到称为总计的新表中。这就是我所希望的结果。
表名:总计
证件等级
1 40
2 70
3 60
我实际上只需要使用第三张表的ID来汇总成绩的值。并尝试使用内部联接几次,它正在工作。但是,当我尝试插入新数据时,总计表无法汇总新数据。希望得到任何帮助,谢谢!:)
我认为您总的来说是王union all
:
insert into total(ID,Grade)
select ID, sum(grade) as total
from (select id, grade from midsemester union all
select id grade from endsemester
) me
group by id;
但是,这对于年级来说是一个不好的结构。您应该将它们全部存储在一个表中,并有一列指示成绩是“中期”还是“中期”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句