我在执行某种查询后得到了这个结果
包含以下行:
我想为给定结果中的每个学生计算总分数为(12/38 + 14/23 + ....)并将其插入新行 如
StudentName,StudentId,term,“总计”作为主题,“计算的TotalMarks ”为Marks,Class,Dicision,id, null 作为DivisionSubject_SubjectProirity
以任何方式做到这一点.... Plz让我知道
答案 0 :(得分:0)
尝试此查询。
首先select
将所有值转换为临时表
select
StudentName,
StudentId,
term,
cast(sum(convert(int,substring(Marks,1,CHARINDEX('/',Marks,1)-1))) as varchar) As 'Subject',
cast(sum(convert(int,substring(Marks,CHARINDEX('/',Marks,1)+1,len(Marks)))) as varchar) As Marks,
class,
division,
id
into #t
from tablename
group by StudentName,StudentId,term,class,division,id
现在使用批量插入
insert into table_insert
(
StudentName
,StudentId
,term
,[Subject]
,Marks
,class
,division
,id
,DivisionSubject_SubjectPriority
)
select
StudentName
,StudentId
,term
,[Subject]
,Marks
,class
,division
,id
,NULL
from #t