資源描述:
《聯(lián)接查詢和分組查詢.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、第十一章聯(lián)接查詢和分組查詢?nèi)缦碌腡-SQL語句含義是什么?Temp表中A列為商品名稱,請說出查詢以大寫字母開頭的所有商品名稱的T-SQL語句聚合函數(shù)COUNT()和SUM()各代表什么意思?回顧和作業(yè)點評SELECTTelephoneFROMstuWHERETelephoneNOTLIKE'6%'SELECTAFROMTempWHEREALIKE'[A-Z]%'預(yù)習檢查分組查詢主要解決什么問題?多表聯(lián)接主要解決什么問題?用在什么場合?統(tǒng)計學(xué)生考試信息從多個數(shù)據(jù)表中取得學(xué)生考試成績單本章任務(wù)使用GROUPBY進行分組查詢掌握多表聯(lián)接查詢本章目標學(xué)號姓名地
2、址所屬年級……001王明全湖南長沙1002張菲湖北宜昌1003于寄謙甘肅天水1004劉國正山東荷澤1005周接輪臺灣新竹2006鞏小妹香港龍灣2007鞏大妹香港龍灣2008張明敏北京順義3009矛十八四川棉陽3010張林光陜西臨潼3需求1每年級的學(xué)生人數(shù)各是多少?分組查詢原理第一學(xué)期人數(shù)第二學(xué)期人數(shù)第三學(xué)期人數(shù)學(xué)號姓名地址所屬年級001王明全湖南長沙1002張菲湖北宜昌1003于寄謙甘肅天水1004劉國正山東荷澤1005周接輪臺灣新竹2006鞏小妹香港龍灣2007鞏大妹香港龍灣2008張明敏北京順義3009矛十八四川棉陽3010張林光陜西臨潼3三組分組
3、查詢用法SELECT……FROM<表名>WHERE……GROUPBY……分組查詢語句SELECTCOUNT(*)AS人數(shù),SGradeAS年級FROMStudentsGROUPBYSGrade演示示例1:分組查詢SELECTCourseID,AVG(Score)AS課程平均成績FROMScoreGROUPBYCourseID分組查詢解析2-1對分組后的每個組內(nèi)的記錄進行一個聚集,通常用到聚合函數(shù)查詢每門課程的平均分按照什么進行分組?分組查詢解析2-2SELECTCourseID,AVG(Score)AS課程平均成績FROMScoreGROUPBYCou
4、rseIDORDERBYAVG(Score)查詢每門課程的平均分,并且按照分數(shù)由低到高的順序排列顯示SELECTStudentID,CourseID,AVG(Score)AS課程平均成績FROMScoreGROUPBYCourseID思考分組查詢所查詢的列1、分組列2、聚合函數(shù)計算出的列分析以下的T-SQL,結(jié)果會怎樣?練習——使用分組查詢學(xué)生相關(guān)信息需求說明查詢每個年級的總學(xué)時數(shù),并按照升序排列查詢每個參加考試的學(xué)員的平均分查詢每門課程的平均分,并按照降序排列查詢每個學(xué)生參加的所有考試的總分,并按照降序排列完成時間:15分鐘共性問題集中講解常見調(diào)試問
5、題及解決辦法代碼規(guī)范問題共性問題集中講解需求2統(tǒng)計每學(xué)期男女同學(xué)的人數(shù),該怎么辦?對學(xué)生進行分組計算每組學(xué)生的總?cè)藬?shù)多列分組2-1年級分組性別分組多列分組2-2SELECTCOUNT(*)AS人數(shù),SGradeAS年級,SSexAS性別FROMStudentSGROUPBYSGrade,SSexORDERBYSGrade演示示例2:多列分組ORDERBY子句在這里的作用?需求3如何獲得總?cè)藬?shù)超過15人的年級?條件限定分組篩選SELECT……FROM<表名>WHERE……GROUPBY……HAVING……SELECTCOUNT(*)AS人數(shù),SGrade
6、AS年級FROMStudentsGROUPBYSGradeHAVINGCOUNT(*)>15分組篩選語句演示示例3:分組篩選WHEREGROUPBYHAVINGWHERE子句:用來篩選FROM子句中指定的操作所產(chǎn)生的行GROUPBY子句:用來分組WHERE子句的輸出HAVING子句:用來從分組的結(jié)果中篩選行WHERE與HAVING對比SELECT部門編號,COUNT(*)FROM員工信息表WHERE工資>=2000GROUPBY部門編號HAVINGCOUNT(*)>1思考查詢有多個員工的工資不低于2000的部門編號分析以下的T-SQL,其作用是什么?指
7、導(dǎo)——限定條件的分組查詢2-1訓(xùn)練要點GROUPBY子句HAVING子句聚合函數(shù)需求說明查詢學(xué)生相關(guān)信息查詢考試相關(guān)信息講解需求說明指導(dǎo)——限定條件的分組查詢2-2難點分析計算學(xué)生的年齡至少一次不及格的信息DATEDIFF(dd,BornDate,GETDATE())/365WHEREStudentResult<60GROUPBYStudentNo完成時間:25分鐘小結(jié)如果查詢語句將得到以下的查詢結(jié)果,那么以下的查詢語句將輸出哪些信息?SELECT*FROMASELECTA1,B1,MAX(C1)FROMA需求4學(xué)號姓名年級…001張青裁1002陳剛1
8、003蘇三東1學(xué)號科目分數(shù)001260002270003480如何同時從這兩個表中取得數(shù)據(jù)?內(nèi)