![單元4高級(jí)查詢-5_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/22/82a2f1b8-d68a-43d3-9899-018bca25fd89/82a2f1b8-d68a-43d3-9899-018bca25fd891.gif)
![單元4高級(jí)查詢-5_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/22/82a2f1b8-d68a-43d3-9899-018bca25fd89/82a2f1b8-d68a-43d3-9899-018bca25fd892.gif)
![單元4高級(jí)查詢-5_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/22/82a2f1b8-d68a-43d3-9899-018bca25fd89/82a2f1b8-d68a-43d3-9899-018bca25fd893.gif)
![單元4高級(jí)查詢-5_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/22/82a2f1b8-d68a-43d3-9899-018bca25fd89/82a2f1b8-d68a-43d3-9899-018bca25fd894.gif)
![單元4高級(jí)查詢-5_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/22/82a2f1b8-d68a-43d3-9899-018bca25fd89/82a2f1b8-d68a-43d3-9899-018bca25fd895.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、高級(jí)查詢高級(jí)查詢單元單元4-54-5回顧與作業(yè)點(diǎn)評(píng)2-1指出下列語(yǔ)句的錯(cuò)誤:指出下列語(yǔ)句的錯(cuò)誤:CREATE TABLE bank( userName VARCHAR(10), balance MONEY) INSERT INTO bank(userName,balance) VALUES(張三張三,500)INSERT INTO bank(userName,balance) VALUES(李四李四,700)DECLARE mymoney INT(4)mymoney=0SELECT mymoney=balance FROM bankDECLARE mymoney INTSET mymoney=
2、0SELECT mymoney=balance FROM bank WHERE userName=張三張三 CREATE TABLE bank( userName VARCHAR(10), balance MONEY) INSERT INTO bank(userName,balance) VALUES(張三張三,500)INSERT INTO bank(userName,balance) VALUES(李四李四,700)DECLARE mymoney INTSET mymoney=0SELECT mymoney=balance FROM bank WHERE userName= =張三張三 回
3、顧與作業(yè)點(diǎn)評(píng)2-2IF mymoney100 print 卡上目前余額不足卡上目前余額不足100,請(qǐng)及時(shí)充值,請(qǐng)及時(shí)充值! print 卡上余額為:卡上余額為:+mymoneyprint 您的年利息為您的年利息為:SELECT 利息利息=CASE WHEN balance 1000 THEN balance*0.20 WHEN ELSE balance*0.10 FROM bank WHERE userName=張三張三GO多條語(yǔ)句添加多條語(yǔ)句添加BEGIN-END去掉去掉WHEN缺少配對(duì)的缺少配對(duì)的END轉(zhuǎn)換轉(zhuǎn)換:Convert(varchar(10), mymoney)指出下列語(yǔ)句的錯(cuò)誤:
4、指出下列語(yǔ)句的錯(cuò)誤:IF mymoney100 BEGIN print 卡上目前余額不足卡上目前余額不足100,請(qǐng)及時(shí)充值,請(qǐng)及時(shí)充值! print 卡上余額為:卡上余額為:+Convert(varchar(10),mymoney) ENDprint 您的年利息為您的年利息為:SELECT 利息利息=CASE WHEN balance 1000 THEN balance*0.20 ELSE balance*0.10 END FROM bank WHERE userName=張三張三GO本章任務(wù)查詢年齡比查詢年齡比“李斯文李斯文” 大的學(xué)生大的學(xué)生查詢未參加查詢未參加“Java”課程最近一次考試
5、的學(xué)生名課程最近一次考試的學(xué)生名單單檢查是否有一年級(jí)的學(xué)生。如果有,將他在讀檢查是否有一年級(jí)的學(xué)生。如果有,將他在讀年級(jí)更新為二年級(jí)年級(jí)更新為二年級(jí)統(tǒng)計(jì)考試缺考情況統(tǒng)計(jì)考試缺考情況制作學(xué)生成績(jī)單制作學(xué)生成績(jī)單本章目標(biāo)掌握簡(jiǎn)單子查詢的用法掌握簡(jiǎn)單子查詢的用法掌握掌握IN子查詢的用法子查詢的用法掌握掌握EXISTS子查詢的用法子查詢的用法應(yīng)用應(yīng)用SQL進(jìn)行綜合查詢進(jìn)行綜合查詢什么是子查詢3-1學(xué)生信息表學(xué)生信息表編寫編寫T-SQL語(yǔ)句,查看年齡比語(yǔ)句,查看年齡比“李斯文李斯文”小小的學(xué)生,要求顯示這些學(xué)生的信息的學(xué)生,要求顯示這些學(xué)生的信息 ?第一步:查詢得到第一步:查詢得到“李斯文李斯文”的出生
6、日期的出生日期第二步:利用第二步:利用WHERE語(yǔ)句,篩選出生日期語(yǔ)句,篩選出生日期比比“李斯文李斯文”大的學(xué)生大的學(xué)生什么是子查詢3-2 實(shí)現(xiàn)方法一:采用實(shí)現(xiàn)方法一:采用T-SQL變量實(shí)現(xiàn)變量實(shí)現(xiàn) DECLARE Birthday datetime -定義變量,存放李斯文的出生日期定義變量,存放李斯文的出生日期SELECT Birthday = BornDate FROM student WHERE studentName = 李斯文李斯文 -求出李斯文的出生日期求出李斯文的出生日期SELECT StudentNo, StudentName, Sex, BornDate, Address F
7、ROM student WHERE BornDate Birthday -篩選出生日期比李斯文篩選出生日期比李斯文大的學(xué)生大的學(xué)生GO 演示案例演示案例1:用變量查年齡比:用變量查年齡比“李斯文李斯文”大的學(xué)生大的學(xué)生數(shù)據(jù)庫(kù)服務(wù)器自上而下逐條執(zhí)行每個(gè)數(shù)據(jù)庫(kù)服務(wù)器自上而下逐條執(zhí)行每個(gè)SQL語(yǔ)句,前面語(yǔ)句的語(yǔ)句,前面語(yǔ)句的執(zhí)行結(jié)果可以作為后面語(yǔ)句的條件執(zhí)行結(jié)果可以作為后面語(yǔ)句的條件什么是子查詢3-3實(shí)現(xiàn)方法二:采用子查詢實(shí)現(xiàn)實(shí)現(xiàn)方法二:采用子查詢實(shí)現(xiàn) SELECT StudentNo, StudentName, Sex, BornDate, Address FROM Student WHERE B
8、ornDate (SELECT BornDate FROM Student WHERE StudentName=李斯文李斯文)GO 子查詢?cè)谧硬樵冊(cè)赪HERE語(yǔ)句中的一般用法:語(yǔ)句中的一般用法: 將子查詢和比較運(yùn)算符聯(lián)合使用,必須保證子查將子查詢和比較運(yùn)算符聯(lián)合使用,必須保證子查詢返回的值不能多于一個(gè)詢返回的值不能多于一個(gè)子查詢是一個(gè)嵌套在子查詢是一個(gè)嵌套在 SELECT、INSERT、UPDATE 或或 DELETE 語(yǔ)句或其他子查詢中的查語(yǔ)句或其他子查詢中的查詢?cè)兏覆樵兏覆樵冏硬樵?,總是用子查詢,總是用圓括號(hào)括起來(lái)圓括號(hào)括起來(lái)演示案例演示案例2:用子查詢查年齡比李斯文大的學(xué)生:用子查詢查年
9、齡比李斯文大的學(xué)生首先,執(zhí)行小括號(hào)中的子查詢,返回的結(jié)果是所有來(lái)自子查詢的結(jié)首先,執(zhí)行小括號(hào)中的子查詢,返回的結(jié)果是所有來(lái)自子查詢的結(jié)果果其次,才開(kāi)始執(zhí)行外圍的其次,才開(kāi)始執(zhí)行外圍的父父查詢,返回查詢,返回查詢查詢的的最終最終結(jié)果結(jié)果SELECT FROM 表表1 WHERE 字段字段1 比較運(yùn)算符比較運(yùn)算符(子查詢子查詢)使用子查詢替換表聯(lián)接3-1學(xué)生信息表和成績(jī)表學(xué)生信息表和成績(jī)表查詢查詢“Java”課程考試剛好等于課程考試剛好等于60分的學(xué)生分的學(xué)生第一步:查詢第一步:查詢“Java”課程的課程編號(hào)課程的課程編號(hào)第二步:根據(jù)課程編號(hào)查詢成績(jī)是第二步:根據(jù)課程編號(hào)查詢成績(jī)是60分學(xué)生的學(xué)分
10、學(xué)生的學(xué)號(hào)號(hào)第三步:根據(jù)學(xué)號(hào)查詢得到學(xué)生姓名第三步:根據(jù)學(xué)號(hào)查詢得到學(xué)生姓名使用子查詢替換表聯(lián)接3-2實(shí)現(xiàn)方法一:采用表聯(lián)接實(shí)現(xiàn)方法一:采用表聯(lián)接 SELECT StudentName FROM Student stu INNER JOIN Result r ON stu.StudentNO = r.StudentNo INNER JOIN Subject sub ON r.SubjectNo = sub.SubjectNo WHERE StudentResult = 60 AND SubjectName = Java LogicGO內(nèi)聯(lián)接(等值聯(lián)接)內(nèi)聯(lián)接(等值聯(lián)接)演示案例演示案例3:用表
11、聯(lián)接查詢成績(jī)是:用表聯(lián)接查詢成績(jī)是60分的學(xué)生分的學(xué)生使用子查詢替換表聯(lián)接3-3實(shí)現(xiàn)方法二:采用子查詢實(shí)現(xiàn)方法二:采用子查詢 SELECT StudentName FROM Student WHERE StudentNo = ( SELECT StudentNo FROM Result INNER JOIN Subject ON Result.SubjectNo= Subject.SubjectNo WHERE StudentResult=60 AND SubjectName=Java Logic )GO子查詢子查詢一般來(lái)說(shuō),表聯(lián)接都可以用子查詢替換,但有的一般來(lái)說(shuō),表聯(lián)接都可以用子查詢替換,
12、但有的子查詢卻不能用表聯(lián)接替換子查詢卻不能用表聯(lián)接替換子查詢比較靈活、方便,常作為增刪改查的篩選子查詢比較靈活、方便,常作為增刪改查的篩選條件,適合于操縱一個(gè)表的數(shù)據(jù)條件,適合于操縱一個(gè)表的數(shù)據(jù)表聯(lián)接更適合于查看多表的數(shù)據(jù)表聯(lián)接更適合于查看多表的數(shù)據(jù)演示案例演示案例4:用子查詢查詢成績(jī)是:用子查詢查詢成績(jī)是60分的學(xué)生分的學(xué)生指導(dǎo)使用子查詢查特定學(xué)生成績(jī)2-1訓(xùn)練要點(diǎn):訓(xùn)練要點(diǎn):使用子查詢返回單條記錄使用子查詢返回單條記錄需求說(shuō)明:需求說(shuō)明:查詢參加最近一次查詢參加最近一次“C#”考試成績(jī)最高分和最低分考試成績(jī)最高分和最低分講解需求說(shuō)明講解需求說(shuō)明指導(dǎo)使用子查詢查特定學(xué)生成績(jī)2-2實(shí)現(xiàn)思路:實(shí)
13、現(xiàn)思路:查詢獲得查詢獲得“C# OOP”課程的課程編號(hào)課程的課程編號(hào)查詢獲得查詢獲得“C# OOP”課程最近一次的考試日期課程最近一次的考試日期根據(jù)課程編號(hào)查詢考試成績(jī)的最高分和最低分根據(jù)課程編號(hào)查詢考試成績(jī)的最高分和最低分SELECT MAX(StudentResult) AS 最高分最高分, MIN(StudentResult) AS 最低分最低分FROM ResultWhere SubjectNo= (SELECT SubjectNo FROM Subject WHERE SubjectName=C# OOP ) AND ExamDate=(select max(ExamDate) fr
14、om Result)完成時(shí)間:完成時(shí)間:20分鐘分鐘小結(jié)什么是子查詢?什么是子查詢?簡(jiǎn)述子查詢的執(zhí)行步驟簡(jiǎn)述子查詢的執(zhí)行步驟如何將子查詢的查詢結(jié)果與父查詢條件匹配?如何將子查詢的查詢結(jié)果與父查詢條件匹配?IN子查詢3-1子查詢返回不止子查詢返回不止1個(gè)值時(shí),個(gè)值時(shí),使用比較運(yùn)算符會(huì)出錯(cuò)使用比較運(yùn)算符會(huì)出錯(cuò)解決方法:采用解決方法:采用 IN 子查詢子查詢 SELECT StudentNo, StudentName FROM Student WHERE StudentNo IN ( SELECT StudentNo FROM Result WHERE SubjectNo = ( SELECT Su
15、bjectNo FROM Subject WHERE SubjectName=Java Logic ) -課程課程 AND StudentResult=60 -成績(jī)成績(jī))將號(hào)改為將號(hào)改為ININ后面的子查詢可以返回多條記錄后面的子查詢可以返回多條記錄常用常用IN替換等于()的比較子查詢替換等于()的比較子查詢這是一個(gè)三層嵌套的這是一個(gè)三層嵌套的子查詢子查詢查詢查詢“Java”課程考試成績(jī)?yōu)檎n程考試成績(jī)?yōu)?0分的學(xué)分的學(xué)生名單生名單IN子查詢3-2查詢參加查詢參加“Java”課程考試的課程考試的在讀學(xué)生名單在讀學(xué)生名單第一步:獲得第一步:獲得Java Logic課程的課程編號(hào)課程的課程編號(hào)SEL
16、ECT SubjectNo FROM Subject WHERE SubjectName=Java LogicSELECT MAX(ExamDate) FROM Result WHERE SubjectNo=( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic )第二步:根據(jù)課程編號(hào)查詢得到第二步:根據(jù)課程編號(hào)查詢得到Java課程最近課程最近一次的考試日期一次的考試日期第三步:根據(jù)課程編號(hào)和最近一次的考試日期第三步:根據(jù)課程編號(hào)和最近一次的考試日期查詢出在讀學(xué)生信息查詢出在讀學(xué)生信息IN子查詢3-3 參考語(yǔ)句參考語(yǔ)句SELEC
17、T StudentNo, StudentName FROM Student WHERE StudentNo IN ( SELECT StudentNo FROM Result WHERE SubjectNo IN ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic )
18、 )獲得獲得“Java Logic”課課程的課程編號(hào)程的課程編號(hào)獲得獲得“Java Logic”課課最近一次的考試日期最近一次的考試日期獲得參加獲得參加“Java Logic”課最近一次考課最近一次考試的學(xué)生學(xué)號(hào)試的學(xué)生學(xué)號(hào)查詢出參加查詢出參加“Java Logic”課最近一次考課最近一次考試的在讀學(xué)生姓名試的在讀學(xué)生姓名這是一個(gè)四層嵌套這是一個(gè)四層嵌套的子查詢的子查詢演示案例演示案例5:使用:使用IN子查詢子查詢 NOT IN子查詢SELECT StudentNo, StudentName FROM Student WHERE StudentNo NOT IN ( SELECT Studen
19、tNo FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) ) )演示案例演示案例6:使用:使用NOT IN子查詢子查詢 AND GradeId = ( SELECT GradeId FROM Subje
20、ct WHERE SubjectName = Java Logic)限定限定“Java Logic”課課程所在學(xué)期程所在學(xué)期查詢未參加查詢未參加“Java Logic”課程最近一次考試的課程最近一次考試的在讀學(xué)生名單在讀學(xué)生名單第一步:查詢參加第一步:查詢參加“Java Logic”課程最近一次考課程最近一次考試的學(xué)生名單試的學(xué)生名單第二步:在第二步:在IN關(guān)鍵字之前增加否定詞關(guān)鍵字之前增加否定詞NOT第三步:限定第三步:限定“Java Logic”課程所在學(xué)期課程所在學(xué)期指導(dǎo)使用IN關(guān)鍵字的子查詢2-1訓(xùn)練要點(diǎn):訓(xùn)練要點(diǎn):使用子查詢返回多條記錄使用子查詢返回多條記錄需求說(shuō)明:需求說(shuō)明:查詢查
21、詢一年級(jí)開(kāi)設(shè)的課程一年級(jí)開(kāi)設(shè)的課程講解需求說(shuō)明講解需求說(shuō)明指導(dǎo)使用IN關(guān)鍵字的子查詢2-2實(shí)現(xiàn)思路:實(shí)現(xiàn)思路:查詢獲得年級(jí)名稱是查詢獲得年級(jí)名稱是S1的所有課程的課程編號(hào)的所有課程的課程編號(hào)根據(jù)課程編號(hào)查詢課程表得到課程名稱根據(jù)課程編號(hào)查詢課程表得到課程名稱SELECT SubjectName FROM Subject WHERE GradeId IN ( SELECT GradeId FROM Grade WHERE GradeName=S1)完成時(shí)間:完成時(shí)間:20分鐘分鐘練習(xí)使用NOT IN關(guān)鍵字的子查詢需求說(shuō)明:需求說(shuō)明:查詢未參加查詢未參加“SQL Base”課程最近一次考試的課程最
22、近一次考試的在讀學(xué)在讀學(xué)生名單生名單提示:提示:獲得獲得SQL Base課程的課程編號(hào)課程的課程編號(hào)根據(jù)課程編號(hào)查詢得到根據(jù)課程編號(hào)查詢得到SQL Base課程最近一次的考課程最近一次的考試日期試日期根據(jù)課程編號(hào)和最近一次的考試日期查詢出學(xué)生名單根據(jù)課程編號(hào)和最近一次的考試日期查詢出學(xué)生名單通過(guò)通過(guò)NOT IN關(guān)鍵字查出沒(méi)有參加最近一次考試的在關(guān)鍵字查出沒(méi)有參加最近一次考試的在讀學(xué)生名單讀學(xué)生名單限定限定SQLBase課程所在學(xué)期課程所在學(xué)期完成時(shí)間:完成時(shí)間:20分鐘分鐘SELECT StudentName FROM Student WHERE StudentNo NOT IN ( SELE
23、CT StudentNo FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=SQL Base ) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo =( SELECT SubjectNo FROM Subject WHERE SubjectName=SQL Base ) )AND GradeId = ( SELECT SubjectNo FROM Subject WHERE SubjectName=SQL
24、 Base)共性問(wèn)題講解n常見(jiàn)調(diào)試問(wèn)題及解決辦法常見(jiàn)調(diào)試問(wèn)題及解決辦法n代碼規(guī)范問(wèn)題代碼規(guī)范問(wèn)題共性問(wèn)題集中講解共性問(wèn)題集中講解EXISTS子查詢4-1如何用如何用SQL語(yǔ)句檢測(cè)數(shù)據(jù)庫(kù)語(yǔ)句檢測(cè)數(shù)據(jù)庫(kù)MySchool是否已是否已經(jīng)創(chuàng)建?經(jīng)創(chuàng)建?IF EXISTS(SELECT * FROM sysDatabases WHERE name = MySchool) DROP DATABASE MySchoolGOCREATE DATABASE MySchool - 建庫(kù)代碼略建庫(kù)代碼略 GOEXISTS子查詢4-2IF EXISTS (子查詢)(子查詢) 語(yǔ)句語(yǔ)句EXISTS子查詢的語(yǔ)法:子查詢的語(yǔ)
25、法:如果子查詢的結(jié)果非空,即記錄條數(shù)如果子查詢的結(jié)果非空,即記錄條數(shù)1條以上,條以上,則則EXISTS (子查詢)將返回真(子查詢)將返回真(true),否),否則返回假則返回假(false) EXISTS也可以作為也可以作為WHERE 語(yǔ)句的子查詢,語(yǔ)句的子查詢,但一般都能用但一般都能用IN子查詢替換子查詢替換EXISTS子查詢4-3檢查檢查“Java Logic”課程最近一次考試課程最近一次考試。如果有如果有 80分以上分以上的成績(jī),則每人提的成績(jī),則每人提2分分;否則,;否則,每人每人提提5分分。最終的成績(jī)不得大于。最終的成績(jī)不得大于100分分第一步:采用第一步:采用EXISTS檢測(cè)是否
26、有人考試成績(jī)達(dá)到檢測(cè)是否有人考試成績(jī)達(dá)到80分以上分以上第二步:如果成績(jī)有第二步:如果成績(jī)有80分以上的,分以上的,UPDATE語(yǔ)句語(yǔ)句為參加本次考試的每名學(xué)生加為參加本次考試的每名學(xué)生加2分;否則加分;否則加5分分/*-采用采用EXISTS子查詢,進(jìn)行酌情加分子查詢,進(jìn)行酌情加分-*/IF EXISTS ( SELECT * FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) AND ExamDate = ( SELECT MAX(ExamDate) FROM
27、 Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic) ) AND StudentResult80) EXISTS子查詢4-4 參考語(yǔ)句參考語(yǔ)句/*-采用采用EXISTS子查詢,進(jìn)行酌情加分子查詢,進(jìn)行酌情加分-*/IF EXISTS ( ) BEGIN UPDATE Result SET StudentResult=StudentResult+2 WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectN
28、ame=Java Logic ) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) ) AND StudentResult=60分分”NOT EXISTS子查詢2-2參考語(yǔ)句參考語(yǔ)句IF NOT EXISTS ( SELECT * FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectNam
29、e=Java Logic) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic) ) AND StudentResult=60 ) BEGIN END ELSE BEGIN END IF NOT EXISTS ( ) BEGIN PRINT 本次無(wú)人通過(guò)考試,試題偏難,每人加本次無(wú)人通過(guò)考試,試題偏難,每人加3分,加分后的成績(jī)?yōu)椋悍郑臃趾蟮某煽?jī)?yōu)椋?UPDATE Result SET St
30、udentResult=StudentResult + 3 WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic ) ) AND StudentResult=97 END ELSE BEGIN END IF NOT EXISTS ( )
31、 BEGIN END ELSE BEGIN PRINT 本次考試成績(jī)一般,每人只加本次考試成績(jī)一般,每人只加1分,加分后的成績(jī)?yōu)椋悍郑臃趾蟮某煽?jī)?yōu)椋?UPDATE Result SET StudentResult=StudentResult + 1 WHERE SubjectNo = ( SELECT SubjectNo FROM Subject WHERE SubjectName=Java Logic) AND ExamDate = ( SELECT MAX(ExamDate) FROM Result WHERE SubjectNo = ( SELECT SubjectNo FROM Su
32、bject WHERE SubjectName=Java Logic ) ) AND StudentResult=60 THEN 1 ELSE 0 END 3)要求保存提?。ú樵儯┑慕Y(jié)果,可以使用我們?cè)鴮W(xué)習(xí)過(guò)的要求保存提?。ú樵儯┑慕Y(jié)果,可以使用我們?cè)鴮W(xué)習(xí)過(guò)的SELECT INTO TempResult 語(yǔ)句,生成新表并保存數(shù)據(jù)語(yǔ)句,生成新表并保存數(shù)據(jù) 指導(dǎo)SQL語(yǔ)句的綜合應(yīng)用5-4需求說(shuō)明:需求說(shuō)明:根據(jù)考試平均分為低于平均分的學(xué)生加分根據(jù)考試平均分為低于平均分的學(xué)生加分顯示提分后學(xué)生最終成績(jī)和通過(guò)率顯示提分后學(xué)生最終成績(jī)和通過(guò)率實(shí)現(xiàn)思路:實(shí)現(xiàn)思路:獲取平均分獲取平均分判斷平均分是否低于判斷
33、平均分是否低于6060分。如果低于分。如果低于6060分,設(shè)置平均分分,設(shè)置平均分為為6060分分提分提分對(duì)成績(jī)低于平均分的學(xué)生進(jìn)行循環(huán)提分,每次每人提對(duì)成績(jī)低于平均分的學(xué)生進(jìn)行循環(huán)提分,每次每人提1 1分,提分后最高分不能超過(guò)分,提分后最高分不能超過(guò)9797分分輸出提分處理后學(xué)生的最終成績(jī)輸出提分處理后學(xué)生的最終成績(jī)統(tǒng)計(jì)提分處理后學(xué)生的通過(guò)率情況統(tǒng)計(jì)提分處理后學(xué)生的通過(guò)率情況指導(dǎo)SQL語(yǔ)句的綜合應(yīng)用5-54. 獲取提分前的平均分獲取提分前的平均分DECLARE avg numeric(4,1) -定義變量存放平均分定義變量存放平均分SELECT avg=AVG(StudentResult) FROM TempResult WHERE StudentResult IS NOT NULL5. 比較考試平均分,對(duì)低于提分前平均分的學(xué)生進(jìn)行循環(huán)提分,每次加比較考試平均分,對(duì)低
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)計(jì)類合同協(xié)議書
- 軟件產(chǎn)品開(kāi)發(fā)與生命周期管理作業(yè)指導(dǎo)書
- 2025年聊城道路貨運(yùn)駕駛員從業(yè)資格證考試
- 2025年咸寧道路貨運(yùn)駕駛員從業(yè)資格證考試題庫(kù)
- 2024-2025學(xué)年高中政治課時(shí)作業(yè)12博大精深的中華文化含解析新人教版必修3
- 2024-2025學(xué)年度九年級(jí)物理全冊(cè)15.3串聯(lián)和并聯(lián)教學(xué)設(shè)計(jì)3新版新人教版
- 2024-2025學(xué)年高中英語(yǔ)Unit2LanguageSectionⅦWriting-調(diào)查報(bào)告教案含解析牛津譯林版必修3
- 2024年春八年級(jí)物理下冊(cè)第十章浮力章末小結(jié)與提升分層精煉新版新人教版
- 2024年新教材高中生物課時(shí)素養(yǎng)評(píng)價(jià)十八6.3.2隔離在物種形成中的作用含解析新人教版必修2
- 蘇科版數(shù)學(xué)八年級(jí)上冊(cè)聽(tīng)評(píng)課記錄《1-3探索三角形全等的條件(1)》
- 2023年高一物理期末考試卷(人教版)
- 2023版押品考試題庫(kù)必考點(diǎn)含答案
- 植物之歌觀后感
- 空氣能熱泵安裝示意圖
- 建筑工程施工質(zhì)量驗(yàn)收規(guī)范檢驗(yàn)批填寫全套表格示范填寫與說(shuō)明
- 2020年中秋國(guó)慶假日文化旅游市場(chǎng)安全生產(chǎn)檢查表
- 昆明天大礦業(yè)有限公司尋甸縣金源磷礦老廠箐-小凹子礦段(擬設(shè))采礦權(quán)出讓收益評(píng)估報(bào)告
- 辦公家具項(xiàng)目實(shí)施方案、供貨方案
- 七年級(jí)英語(yǔ)下冊(cè)閱讀理解10篇
- 節(jié)后開(kāi)工收心會(huì)
- 設(shè)計(jì)質(zhì)量、進(jìn)度保證措施
評(píng)論
0/150
提交評(píng)論