Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT * FROM (SELECT StudentID, SubjectID, ObtainedMarks
- from [Exam].[ObtainedMarkEntry]) as InvoiceResult
- PIVOT
- (
- sum(ObtainedMarks) for [SubjectID] in ([1],[2],[3],[4])
- )as finalResult
- declare @minvalue int, @maxvalue int
- declare @myArray varchar(max)
- set @MyArray=''
- select RowID=IDENTITY(int, 1,1), SubjectID into #tempSubject from [Exam].[ObtainedMarkEntry]
- select * from #tempSubject
- set @minvalue = (select min(RowID) from #tempSubject)
- set @maxvalue = (select max(RowID) from #tempSubject)
- while (@minvalue<=@maxvalue)
- begin
- declare @sid nvarchar(10)
- set @sid=(select SubjectID from #tempSubject where RowID=@minvalue)
- set @myArray= @myArray + '[' + @sid + '], '
- set @minvalue= @minvalue+1
- end
- set @myArray= SUBSTRING(@myArray,0,len(@myArray))
- drop table #tempSubject
- declare @q as nvarchar(max)
- SELECT * FROM (SELECT StudentID, SubjectID, ObtainedMarks
- from [Exam].[ObtainedMarkEntry]) as InvoiceResult
- PIVOT
- (
- sum(ObtainedMarks) for [SubjectID] in (@myArray)
- )as finalResult
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement