版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
MySQL數(shù)據(jù)庫管理與開發(fā)(慕課版第2版)
第9章
表記錄的檢索PAGE2PAGE3MySQL數(shù)據(jù)庫管理與開發(fā)(慕課版第2版)教學(xué)設(shè)計課程名稱:授課年級:授課學(xué)期:教師姓名:年月課題名稱第9章表記錄的檢索計劃課時8課時教學(xué)引入表記錄的檢索(數(shù)據(jù)查詢)是數(shù)據(jù)庫操作中最常用、最重要的環(huán)節(jié),貫穿于信息系統(tǒng)的各類場景:從圖書館的圖書查詢到電商平臺的商品篩選,從學(xué)生成績統(tǒng)計到訂單記錄分析,都依賴高效的查詢技術(shù)。本章將系統(tǒng)講解MySQL中SELECT語句的使用,包括單表查詢、聚合函數(shù)、連接查詢、子查詢等核心方法,幫助學(xué)生掌握從簡單到復(fù)雜的查詢技巧,實現(xiàn)精準高效的數(shù)據(jù)獲取。教學(xué)目標使學(xué)生掌握SELECT語句的基本語法及結(jié)構(gòu)(selection_list、FROM、WHERE等子句)。使學(xué)生熟練進行單表查詢:包括條件查詢(IN、BETWEENAND)、模糊查詢(LIKE)、多條件組合(AND/OR)、結(jié)果去重(DISTINCT)、排序(ORDERBY)等。使學(xué)生掌握分組查詢(GROUPBY)及結(jié)果限制(LIMIT)的使用方法。使學(xué)生掌握聚合函數(shù)(COUNT、SUM、AVG、MAX、MIN)的功能及應(yīng)用場景。使學(xué)生掌握連接查詢:內(nèi)連接、左外連接、右外連接及復(fù)合條件連接的語法與實例。使學(xué)生掌握子查詢:帶IN、比較運算符、EXISTS、ANY、ALL關(guān)鍵字的子查詢邏輯及用法。使學(xué)生掌握合并查詢結(jié)果(UNION/UNIONALL)、表與字段別名的定義及正則表達式查詢。使學(xué)生學(xué)會利用AI工具生成查詢實例,提升復(fù)雜查詢的編寫效率。教學(xué)重點SELECT語句的基本結(jié)構(gòu)及單表查詢核心操作(條件、排序、去重)聚合函數(shù)(COUNT、SUM、AVG)的實際應(yīng)用及與GROUPBY的結(jié)合連接查詢:內(nèi)連接的等同條件、左/右外連接的結(jié)果差異子查詢:IN關(guān)鍵字子查詢、EXISTS判斷邏輯、ANY與ALL的區(qū)別合并查詢結(jié)果(UNION與UNIONALL的差異)及正則表達式基礎(chǔ)用法教學(xué)難點多表查詢中的笛卡兒積問題及等同連接的條件控制GROUPBY分組查詢中字段與聚合函數(shù)的匹配要求外連接與內(nèi)連接的結(jié)果差異及適用場景判斷子查詢的嵌套邏輯(內(nèi)層結(jié)果對外層查詢的影響)正則表達式模式字符(^、$、.、[]等)的靈活應(yīng)用教學(xué)方式課堂教學(xué)以PPT講授為主,結(jié)合MySQL命令行實操演示(實時運行案例代碼展示效果),采用“語法解析→案例演示→錯誤分析→學(xué)生實操”四步教學(xué)法,輔以分組任務(wù)(基于文檔“上機指導(dǎo)”內(nèi)容)教學(xué)過程第一課時(基本查詢語句)一、復(fù)習鞏固回顧上一章表記錄更新操作(INSERT、UPDATE、DELETE)的核心知識,提問:“數(shù)據(jù)插入后,如何驗證數(shù)據(jù)是否正確存儲?如何獲取所需的特定數(shù)據(jù)?”引出表記錄檢索的必要性,強調(diào)查詢是數(shù)據(jù)庫交互的核心需求。二、導(dǎo)入新課在圖書館管理系統(tǒng)中,需要查詢所有圖書信息、指定圖書的作者和價格,甚至關(guān)聯(lián)圖書表和類型表獲取完整信息——這些都依賴SELECT語句的基本用法。本課時將從SELECT語句的結(jié)構(gòu)入手,掌握查詢所有字段、指定字段及多表查詢的基礎(chǔ)方法。三、新課講解知識點1-SELECT語句的基本結(jié)構(gòu)SELECT語句是查詢的核心,基本語法:SELECTselection_list--要查詢的列FROM數(shù)據(jù)表名--指定數(shù)據(jù)表WHEREprimary_constraint--行篩選條件GROUPBYgrouping_columns--分組規(guī)則ORDERBYsorting_columns--排序規(guī)則HAVINGsecondary_constraint--分組篩選條件LIMITcount--結(jié)果限制數(shù)量各子句按順序執(zhí)行,基礎(chǔ)查詢需掌握SELECT和FROM的組合使用。知識點2-查詢所有字段使用“*”代表表中所有字段,語法:SELECT*FROM表名;【例9-1】查詢tb_manager表所有數(shù)據(jù):SELECT*FROMtb_manager;執(zhí)行效果:返回表中所有字段的全部記錄,適用于需完整數(shù)據(jù)的場景。知識點3-查詢指定字段語法:SELECT字段1,字段2,...FROM表名;【例9-2】查詢tb_bookinfo表的圖書名稱和作者:SELECTbookname,authorFROMtb_bookinfo;執(zhí)行效果:僅返回指定字段的記錄,減少數(shù)據(jù)傳輸量,提升效率。知識點4-多表基礎(chǔ)查詢語法:SELECT表1.字段,表2.字段FROM表1,表2;【例】從tb_bookinfo和tb_booktype查詢關(guān)聯(lián)字段:SELECTtb_bookinfo.bookname,tb_booktype.typenameFROMtb_bookinfo,tb_booktype;執(zhí)行效果:返回兩表的笛卡兒積,需通過WHERE子句添加連接條件避免冗余。四、歸納總結(jié)回顧SELECT語句的基本結(jié)構(gòu),強調(diào)“*”查詢所有字段的便捷性與指定字段查詢的高效性,指出多表查詢需注意連接條件的重要性。通過課堂練習(查詢學(xué)生表的姓名和學(xué)號)檢驗掌握情況。五、布置作業(yè)●編寫SQL語句查詢tb_bookinfo表的所有字段數(shù)據(jù);查詢tb_manager表的id和name字段?!駠L試從tb_borrow和tb_reader表(假設(shè)存在)查詢bookid和readername字段,觀察結(jié)果是否存在冗余。第二課時(單表查詢:條件查詢基礎(chǔ))一、復(fù)習鞏固檢查作業(yè)中基本查詢的執(zhí)行情況,重點分析多表查詢的笛卡兒積問題。提問:“如何從大量記錄中精準獲取符合條件的數(shù)據(jù)?”引出WHERE子句的條件篩選作用。二、導(dǎo)入新課在圖書管理中,需查詢特定ID的圖書、價格在某范圍的圖書或名稱含“Java”的圖書——這些需求需通過條件查詢實現(xiàn)。本課時將學(xué)習WHERE子句結(jié)合IN、BETWEENAND、LIKE等關(guān)鍵字的條件篩選方法。三、新課講解知識點1-WHERE子句基礎(chǔ)WHERE子句用于限定查詢條件,語法:SELECT字段FROM表名WHERE條件;【例9-3】查詢tb_manager表中名稱為“mr”的記錄:SELECT*FROMtb_managerWHEREname='mr';執(zhí)行效果:僅返回符合條件的記錄,避免全表掃描。知識點2-帶IN關(guān)鍵字的查詢IN用于判斷字段值是否在指定集合中,語法:WHERE字段[NOT]IN(元素1,元素2,...);【例9-4】查詢tb_bookinfo表中id為2和3的圖書:SELECTbookname,authorFROMtb_bookinfoWHEREidIN(2,3);執(zhí)行效果:返回id匹配集合的記錄,NOTIN則返回不在集合中的記錄。知識點3-帶BETWEENAND的范圍查詢BETWEENAND用于判斷字段值是否在指定范圍,語法:WHERE字段[NOT]BETWEEN取值1AND取值2;【例9-5】查詢tb_bookinfo表中inTime在2024-09-06至2024-09-07的記錄:SELECT*FROMtb_bookinfoWHEREinTimeBETWEEN'2024-09-06'AND'2024-09-07';執(zhí)行效果:返回范圍內(nèi)的記錄,NOTBETWEEN則返回范圍外記錄。知識點4-帶LIKE的模糊查詢LIKE用于模糊匹配,支持通配符“%”(任意字符)和“_”(單個字符),語法:WHERE字段LIKE'匹配模式';【例9-6】查詢tb_bookinfo表中名稱含“Java”的圖書:SELECT*FROMtb_bookinfoWHEREbooknameLIKE'%Java%';執(zhí)行效果:返回名稱中包含“Java”的記錄,“%Java”匹配以Java結(jié)尾的字符串。四、歸納總結(jié)梳理條件查詢的核心方法:WHERE子句基礎(chǔ)篩選、IN集合匹配、BETWEENAND范圍判斷、LIKE模糊查詢。強調(diào)通配符“%”與“_”的區(qū)別,及NOT關(guān)鍵字對條件的取反作用。五、布置作業(yè)●使用IN關(guān)鍵字查詢tb_manager表中name為“Tony”“Kelly”的記錄;●用BETWEENAND查詢tb_bookinfo表中price在50-70之間的圖書;●用LIKE查詢tb_bookinfo表中author以“明”開頭的圖書。第三課時(單表查詢:條件深化與排序)一、復(fù)習鞏固檢查作業(yè)中條件查詢的使用情況,重點講解LIKE通配符的易錯點(如多字符匹配需用“%”而非“_”)。提問:“如何查詢字段值為空的記錄?如何組合多個條件篩選數(shù)據(jù)?”引出本課時內(nèi)容。二、導(dǎo)入新課實際查詢中,需處理空值記錄(如未填寫的用戶地址)、組合多條件(如價格>50且?guī)齑?gt;10)、去除重復(fù)數(shù)據(jù)(如唯一的圖書類型),并對結(jié)果排序(如按價格升序)。本課時將學(xué)習這些進階單表查詢技巧。三、新課講解知識點1-ISNULL查詢空值ISNULL用于判斷字段值是否為空(NULL),語法:WHERE字段IS[NOT]NULL;【例9-7】查詢tb_readertype表中name為空的記錄:SELECT*FROMtb_readertypeWHEREnameISNULL;執(zhí)行效果:返回name為NULL的記錄,ISNOTNULL則返回非空記錄。知識點2-AND/OR多條件查詢●AND:需同時滿足所有條件,語法:WHERE條件1AND條件2;【例9-8】查詢tb_manager表中name='Tony'且pwd='xtb123456'的記錄:SELECT*FROMtb_managerWHEREname='Tony'ANDpwd='xtb123456';●OR:滿足任一條件即可,語法:WHERE條件1OR條件2;【例9-9】查詢tb_manager表中name='Tony'或name='Kelly'的記錄:SELECT*FROMtb_managerWHEREname='Tony'ORname='Kelly';執(zhí)行效果:返回符合任一條件的記錄。知識點3-DISTINCT去除重復(fù)行DISTINCT用于去除查詢結(jié)果中的重復(fù)記錄,語法:SELECTDISTINCT字段FROM表名;【例9-10】去除tb_bookinfo表中typeid的重復(fù)值:SELECTDISTINCTtypeidFROMtb_bookinfo;執(zhí)行效果:僅返回唯一的typeid值,對比去重前的重復(fù)結(jié)果。知識點4-ORDERBY排序ORDERBY用于對結(jié)果排序,語法:ORDERBY字段[ASC|DESC];(ASC升序,DESC降序,默認ASC)【例9-11】查詢tb_borrow表并按backTime降序排列:SELECT*FROMtb_borrowORDERBYbackTimeDESC;執(zhí)行效果:結(jié)果按backTime從新到舊排列,NULL值在升序中居首,降序中居尾。四、歸納總結(jié)梳理空值查詢、多條件組合、去重及排序的核心語法,強調(diào)AND與OR的邏輯差異、DISTINCT對整行重復(fù)的判斷、ORDERBY的排序方向控制。通過綜合案例(多條件+排序)檢驗掌握情況。五、布置作業(yè)●查詢tb_bookinfo表中typeid非空且price>60的圖書,按price升序排列;●用DISTINCT查詢tb_borrow表中所有借閱過的bookid,并按bookid降序排列。第四課時(單表查詢:分組與結(jié)果限制)一、復(fù)習鞏固檢查作業(yè)中多條件排序的執(zhí)行情況,重點分析ORDERBY與WHERE的執(zhí)行順序(先篩選后排序)。提問:“如何統(tǒng)計每類圖書的借閱次數(shù)?如何只顯示查詢結(jié)果的前3條記錄?”引出分組和結(jié)果限制的需求。二、導(dǎo)入新課在數(shù)據(jù)統(tǒng)計中,需按類別分組統(tǒng)計數(shù)量(如每類圖書的總數(shù))、按條件篩選分組結(jié)果(如借閱次數(shù)>2的圖書),并限制顯示條數(shù)(如top5熱銷商品)。本課時將學(xué)習GROUPBY分組和LIMIT限制結(jié)果的方法。三、新課講解知識點1-GROUPBY分組查詢GROUPBY用于將數(shù)據(jù)按字段分組,常與聚合函數(shù)結(jié)合,語法:GROUPBY字段;1.基礎(chǔ)分組:【例9-12】統(tǒng)計每本圖書的借閱次數(shù):SELECTbookid,COUNT(*)FROMtb_borrowGROUPBYbookid;執(zhí)行效果:按bookid分組,返回每組的記錄數(shù)。2.GROUP_CONCAT()函數(shù):用于顯示每組的字段值集合,語法:GROUP_CONCAT(字段)【例9-13】查詢每本圖書的借閱者ID:SELECTbookid,GROUP_CONCAT(readerid)FROMtb_borrowGROUPBYbookid;執(zhí)行效果:返回每組readerid的拼接結(jié)果。3.多字段分組:先按第一字段分組,同組內(nèi)再按第二字段分組,語法:GROUPBY字段1,字段2;【例9-14】按bookid和readerid分組:SELECTbookid,readeridFROMtb_borrowGROUPBYbookid,readerid;執(zhí)行效果:返回兩級分組的結(jié)果。知識點2-LIMIT限制結(jié)果數(shù)量LIMIT用于控制返回的記錄條數(shù),語法:●LIMIT數(shù)量;:返回前N條記錄;●LIMIT起始位置,數(shù)量;:從起始位置(從0開始)返回N條記錄?!纠?-15】查詢最后被借閱的3本圖書:SELECT*FROMtb_borrow1ORDERBYborrowTimeDESCLIMIT3;【例9-16】從第2條記錄開始查詢3條借閱記錄:SELECT*FROMtb_borrow1ORDERBYborrowTimeDESCLIMIT1,3;執(zhí)行效果:分別返回前3條和指定范圍的記錄。四、歸納總結(jié)強調(diào)GROUPBY分組需保證查詢字段要么是分組字段,要么是聚合函數(shù);LIMIT的起始位置從0開始,常與ORDERBY結(jié)合實現(xiàn)分頁或TopN查詢。通過練習(分組統(tǒng)計+限制結(jié)果)鞏固知識點。五、布置作業(yè)●按typeid分組統(tǒng)計tb_bookinfo表中每類圖書的數(shù)量,只顯示數(shù)量>1的分組;●查詢tb_bookinfo表中price最高的2本圖書,顯示書名和價格。第五課時(聚合函數(shù)查詢)一、復(fù)習鞏固回顧GROUPBY分組的核心邏輯,提問:“如何統(tǒng)計表中總記錄數(shù)?如何計算某字段的平均值或總和?”引出聚合函數(shù)的作用,強調(diào)聚合函數(shù)是分組統(tǒng)計的核心工具。二、導(dǎo)入新課在數(shù)據(jù)統(tǒng)計場景中,需計算學(xué)生總?cè)藬?shù)(COUNT)、銷售總額(SUM)、平均成績(AVG)、最高分數(shù)(MAX)、最低庫存(MIN)——這些都依賴聚合函數(shù)實現(xiàn)。本課時將系統(tǒng)學(xué)習常用聚合函數(shù)的功能與應(yīng)用。三、新課講解知識點1-COUNT()函數(shù)用于統(tǒng)計記錄數(shù)量,語法:●COUNT(*):統(tǒng)計所有記錄(含NULL);●COUNT(字段):統(tǒng)計指定字段非NULL的記錄數(shù)。【例9-17】統(tǒng)計圖書類型表tb_booktype的記錄數(shù):SELECTCOUNT(*)FROMtb_booktype;執(zhí)行效果:返回表中總記錄數(shù),COUNT(*)經(jīng)優(yōu)化后效率極高。知識點2-SUM()函數(shù)用于計算數(shù)值字段的總和,語法:SUM(字段);【例9-18】統(tǒng)計銷售表tb_sell中amount字段的總和:SELECTSUM(amount)FROMtb_sell;執(zhí)行效果:返回所有amount的累加值,忽略NULL值。知識點3-AVG()函數(shù)用于計算數(shù)值字段的平均值,語法:AVG(字段);【例9-19】計算學(xué)生表tb_student中score的平均值:SELECTAVG(score)FROMtb_student;執(zhí)行效果:返回score的平均結(jié)果,計算邏輯為SUM(score)/COUNT(score)。知識點4-MAX()與MIN()函數(shù)●MAX():返回字段最大值,語法:MAX(字段);●MIN():返回字段最小值,語法:MIN(字段);【例9-20】查詢學(xué)生表最高成績:SELECTMAX(score)FROMtb_student;【例9-21】查詢學(xué)生表最低成績:SELECTMIN(score)FROMtb_student;執(zhí)行效果:分別返回score的最大和最小值。四、歸納總結(jié)梳理聚合函數(shù)的核心功能:COUNT統(tǒng)計數(shù)量、SUM求和、AVG求平均、MAX/MIN取極值,強調(diào)聚合函數(shù)忽略NULL值的特性,及與GROUPBY結(jié)合實現(xiàn)分組統(tǒng)計的邏輯。通過綜合案例(多函數(shù)聯(lián)合統(tǒng)計)檢驗應(yīng)用能力。五、布置作業(yè)●統(tǒng)計tb_bookinfo表的圖書總數(shù)、平均價格、最高價格及價格總和;●按typeid分組,統(tǒng)計每類圖書的數(shù)量、平均頁數(shù),顯示typeid和統(tǒng)計結(jié)果。第六課時(連接查詢)一、復(fù)習鞏固檢查作業(yè)中聚合函數(shù)與分組的結(jié)合使用情況,重點分析分組統(tǒng)計時字段的匹配要求。提問:“如何同時獲取圖書的基本信息和對應(yīng)的類型名稱?如何關(guān)聯(lián)兩張表的數(shù)據(jù)進行查詢?”引出連接查詢的必要性。二、導(dǎo)入新課實際應(yīng)用中,數(shù)據(jù)常分散在多張表中(如圖書信息在tb_bookinfo,類型名稱在tb_booktype),需通過連接查詢關(guān)聯(lián)數(shù)據(jù)。本課時將學(xué)習內(nèi)連接、外連接及復(fù)合條件連接,實現(xiàn)多表數(shù)據(jù)的聯(lián)合查詢。三、新課講解知識點1-內(nèi)連接查詢內(nèi)連接返回兩表中滿足連接條件的記錄,語法:SELECT字段FROM表1,表2WHERE表1.字段=表2.字段;(等同連接)【例9-22】查詢圖書信息及對應(yīng)類型名稱:SELECTtb_bookinfo.bookname,tb_booktype.typenameFROMtb_bookinfo,tb_booktypeWHEREtb_bookinfo.typeid=tb_booktype.id;執(zhí)行效果:僅返回兩表中typeid與id匹配的記錄,排除不匹配的行。知識點2-外連接查詢外連接返回滿足條件的記錄及左表/右表的所有記錄(不匹配處為NULL),分左外連接和右外連接:1.左外連接(LEFTJOIN):返回左表所有記錄及右表匹配記錄,語法:SELECT字段FROM左表LEFTJOIN右表ON連接條件;【例9-23】查詢所有圖書及對應(yīng)類型(含無類型的圖書):SELECTtb_bookinfo.bookname,tb_booktype.typenameFROMtb_bookinfoLEFTJOINtb_booktypeONtb_bookinfo.typeid=tb_booktype.id;執(zhí)行效果:左表(tb_bookinfo)所有記錄均顯示,右表無匹配則typename為NULL。2.右外連接(RIGHTJOIN):返回右表所有記錄及左表匹配記錄,語法:SELECT字段FROM左表RIGHTJOIN右表ON連接條件;【例9-24】查詢所有類型及對應(yīng)圖書(含無圖書的類型):SELECTtb_booktype.typename,tb_bookinfo.booknameFROMtb_bookinfoRIGHTJOINtb_booktypeONtb_bookinfo.typeid=tb_booktype.id;執(zhí)行效果:右表(tb_booktype)所有記錄均顯示,左表無匹配則bookname為NULL。知識點3-復(fù)合條件連接查詢在連接條件基礎(chǔ)上添加其他篩選條件,語法:SELECT字段FROM表1,表2WHERE連接條件AND篩選條件;【例9-25】查詢未歸還的圖書借閱信息:SELECTtb_borrow1.bookid,tb_bookinfo.booknameFROMtb_borrow1,tb_bookinfoWHEREtb_borrow1.bookid=tb_bookinfo.idANDtb_borrow1.ifback=0;執(zhí)行效果:返回滿足連接條件且ifback=0(未歸還)的記錄。四、歸納總結(jié)對比內(nèi)連接(僅匹配記錄)與外連接(含左/右表全部記錄)的結(jié)果差異,強調(diào)連接條件的核心作用(避免笛卡兒積),復(fù)合條件連接需先關(guān)聯(lián)表再篩選數(shù)據(jù)。通過練習(左外連接+條件篩選)鞏固知識點。五、布置作業(yè)●用內(nèi)連接查詢tb_borrow表中已歸還圖書(ifback=1)的借閱記錄及對應(yīng)圖書名稱;●用右外連接查詢所有圖書類型及該類型下價格>60的圖書名稱。第七課時(子查詢)一、復(fù)習鞏固檢查作業(yè)中連接查詢的執(zhí)行情況,重點分析內(nèi)連接與外連接的結(jié)果差異。提問:“如何根據(jù)一張表的查詢結(jié)果作為另一張表的查詢條件?例如,查詢被借閱過的圖書信息?!币鲎硬樵兊膽?yīng)用場景。二、導(dǎo)入新課子查詢通過嵌套查詢實現(xiàn)復(fù)雜邏輯,如“先查借閱表的圖書ID,再查圖書表中對應(yīng)ID的信息”。本課時將學(xué)習帶IN、比較運算符、EXISTS、ANY、ALL關(guān)鍵字的子查詢,掌握多層查詢的邏輯實現(xiàn)。三、新課講解知識點1-帶IN關(guān)鍵字的子查詢子查詢返回值列表,外層用IN判斷是否在列表中,語法:WHERE字段IN(子查詢);【例9-26】查詢被借閱過的圖書信息:SELECTid,booknameFROMtb_bookinfoWHEREidIN(SELECTbookidFROMtb_borrow);執(zhí)行效果:返回id在借閱表bookid列表中的圖書,NOTIN則返回未被借閱的圖書。知識點2-帶比較運算符的子查詢子查詢返回單個值,外層用比較運算符(=、>、>=等)判斷,語法:WHERE字段運算符(子查詢);【例9-27】查詢成績≥“優(yōu)秀”分數(shù)線的學(xué)生:SELECT*FROMtb_studentWHEREscore>=(SELECTscoreFROMtb_gradeWHEREname='優(yōu)秀');執(zhí)行效果:返回成績不低于優(yōu)秀線的學(xué)生記錄,子查詢需返回唯一值。知識點3-帶EXISTS關(guān)鍵字的子查詢EXISTS判斷子查詢是否有結(jié)果(返回真假),有結(jié)果則執(zhí)行外層查詢,語法:WHEREEXISTS(子查詢);【例9-28】查詢已被借閱的圖書信息:SELECTid,booknameFROMtb_bookinfoWHEREEXISTS(SELECT*FROMtb_borrowWHEREtb_borrow.bookid=tb_bookinfo.id);執(zhí)行效果:子查詢有匹配記錄則外層返回該圖書,NOTEXISTS返回未被借閱的圖書。知識點4-帶ANY/ALL關(guān)鍵字的子查詢●ANY:滿足子查詢結(jié)果中的任意一個,語法:WHERE字段運算符ANY(子查詢);【例9-29】查詢成績高于班級2中任意學(xué)生的記錄:SELECT*FROMtb_studentWHEREscore>ANY(SELECTscoreFROMtb_studentWHEREclassid=2);●ALL:滿足子查詢結(jié)果中的所有,語法:WHERE字段運算符ALL(子查詢);【例9-30】查詢成績高于班級1中所有學(xué)生的記錄:SELECT*FROMtb_studentWHEREscore>ALL(SELECTscoreFROMtb_studentWHEREclassid=1);執(zhí)行效果:ANY返回高于最小值的記錄,ALL返回高于最大值的記錄。四、歸納總結(jié)梳理子查詢的核心邏輯:內(nèi)層查詢結(jié)果作為外層查詢的條件,不同關(guān)鍵字適用場景不同(IN匹配列表、EXISTS判斷存在性、ANY/ALL比較范圍)。強調(diào)子查詢需保證內(nèi)層結(jié)果與外層條件的兼容性(單值/多值)。五、布置作業(yè)●用IN子查詢查詢借閱過圖書ID為1的讀者信息(假設(shè)讀者表為tb_reader);●用EXISTS子查詢查詢有未歸還圖書(ifback=0)的圖書類型;●用ALL子查詢查詢價格高于所有“程序設(shè)計”類圖書的其他類型圖書。第八課時(合并查詢、別名與正則表達式)一、復(fù)習鞏固檢查作業(yè)中子查詢的嵌套邏輯,重點分析ANY與ALL的區(qū)別。提問:“如何合并兩個查詢的結(jié)果?如何簡化多表查詢的表名和字段名?如何實現(xiàn)更靈活的模糊查詢?”引出本課時內(nèi)容。二、導(dǎo)入新課實際開發(fā)中,需合并多表查詢結(jié)果(如圖書表和圖書備份表的記錄)、簡化長表名和字段名(如用別名)、通過正則表達式實現(xiàn)復(fù)雜匹配(如匹配特定格式的字符串)。本課時將學(xué)習這些進階查詢技巧。三、新課講解知識點1-合并查詢結(jié)果使用UNION或UNIONALL合并多個SELECT結(jié)果,語法:●SELECT語句1UNIONSELECT語句2;:合并并去重;●SELECT語句1UNIONALLSELECT語句2;:合并不去重?!纠?-31】合并tb_bookinfo和tb_bookinfo1的圖書
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶樹栽培工7S考核試卷含答案
- 承攬展會合同范本
- 微軟軟件合同范本
- 關(guān)于購房合同范本
- 房屋訂購合同協(xié)議
- 建設(shè)購買合同范本
- 采購瓜苗合同范本
- 鋼琴調(diào)律合同協(xié)議
- 防疫工作合同范本
- 轉(zhuǎn)賣電腦合同范本
- 2025年黨務(wù)工作者試題及答案
- 電大建筑??啤督ㄖ茍D基礎(chǔ)》期末上機考試題庫
- 管理崗位工作述職報告
- 掩體構(gòu)筑與偽裝
- T-CAHPE 006-2025 健康教育人員專業(yè)能力建設(shè)要求
- (11)普通高中信息科技課程標準日常修訂版(2017年版2025年修訂)
- 國家開放大學(xué)電大本科《政府經(jīng)濟學(xué)》2025年期末試題及答案
- 2025年民法學(xué)2考試試題及答案
- 愛國詩歌鑒賞課件
- 2025年度食品安全員考試題庫及答案
- 毛皮學(xué)課件教學(xué)課件
評論
0/150
提交評論