use StudentManageDB
go
--查詢成績
declare @cAvg int
select @cAvg=avg(CSharp) from ScoreList
inner join Students on ScoreList.StudentId=Students.StudentId where ClassId=1
print 'C#平均成績:'+convert(varchar(20),@cAvg)
--判斷成績
if(@cAvg>=80)
print '軟件一班成績優秀!'
else
print '軟件一班成績一般!'
示例2:WHILE語句示例
use StudentManageDB
go
print '加分之前的C#成績:'
select StudentId,CSharp from ScoreList
declare @CSharp int,@StuId int
while(1=1)
begin
select top 1 @CSharp=CSharp,@StuId=StudentId
from ScoreList where CSharp<60
if (@CSharp<60)
update ScoreList set CSharp=CSharp+1
where StudentId=@StuId
if((select count(*) from ScoreList where CSharp<60)=0)
break
end
print '加分之後的C#成績:'
select StudentId,CSharp from ScoreList
示例3:CASE-END語句示例
use StudentManageDB
go
select 學號=StudentId,
總評=CASE
when (CSharp+SQLServerDB)/2>=90 then 'A'
when (CSharp+SQLServerDB)/2 between 80 and 89 then 'B'
when (CSharp+SQLServerDB)/2 between 70 and 79 then 'C'
when (CSharp+SQLServerDB)/2 between 60 and 69 then 'D'
else '不及格'
end
from ScoreList