更新時(shí)間:2021-06-21 16:00:44作者:admin2
練習(xí)教材中存儲(chǔ)過(guò)程、觸發(fā)器和用戶自定義函數(shù)的例子。教材中的BookSales數(shù)據(jù)庫(kù),在群共享中,文件名為BookSales.bak。針對(duì)附件1中的教學(xué)活動(dòng)數(shù)據(jù)庫(kù),完成下面的實(shí)驗(yàn)內(nèi)容。(1)創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,該存儲(chǔ)過(guò)程統(tǒng)計(jì)“高等數(shù)學(xué)”的成績(jī)分布情況,即按照各分?jǐn)?shù)段統(tǒng)計(jì)人數(shù)。CREATE Proc MATH_NUM @MATH CHAR(20)='高等數(shù)學(xué)'ASSELECT @MATH as canme,count(case when score>=90 then 1 end)as[90以上],?count(case when score>=80 and score=70 and score=60 and score<70 then 1 end)as[60-70],count(case when score<60 then 1 end)as[60以下] FROM study,courseWHERE study.cno=course.cno and course.cname=@MATHGROUP BY course.cname(2)創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,該存儲(chǔ)過(guò)程有一個(gè)參數(shù)用來(lái)接收課程號(hào),該存儲(chǔ)過(guò)程統(tǒng)計(jì)給定課程的平均成績(jī)。CREATE Proc AVG_SCORE @cno CHAR(20)ASSELECT @cno as課程號(hào),course.cname as課程名,STR(AVG(score),5,2) as平均成績(jī)FROM study,courseWHERE study.cno=course.cno and course.cno=@cnoGROUP BY course.cname(3)創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,該存儲(chǔ)過(guò)程將學(xué)生選課成績(jī)從百分制改為等級(jí)制(即A、B、C、D、E)。CREATE Proc SCORE_CHANGEASSELECT course.cname as課程名,study.sno as學(xué)號(hào),study.cno as課程號(hào),study.score as成績(jī),casewhe