⑴ 按照人名查出學生的各科成績以及總成績並按總成績排名的sql語句
按照人名查出學生的各科成績以及總成績並按總成績排名的sql語句示例如下:
selectA.name,
(selectB.scorefromtable_scoreBwhereB.type='數學'andA.id=B.id)as數學,
(selectB.scorefromtable_scoreBwhereB.type='語文'andA.id=B.id)as語文,
(selectB.scorefromtable_scoreBwhereB.type='英語'andA.id=B.id)as英語,
(selectSUM(B.score)fromtable_scoreBwhereA.id=B.id)assum_score
fromtable_studentAorderbysum_scoreDESC
以上sql語句首先把學生表和成績表聯合查出每個學生的數學、語文、英語成績,然後通過selectSUM(B.score)fromtable_scoreBwhereA.id=B.id查出每個學生的總成績。
最後orderbysum_scoreDESC實現按總成績倒敘排列。
(1)sassql排序擴展閱讀
上述sql語句重點是對as關鍵字的使用-Alias(別名),通過使用SQL,可以為列名稱和表名稱指定別名(Alias)。
表的SQLAlias語法
SELECTcolumn_name(s)FROMtable_nameASalias_name;
列的SQLAlias語法
SELECTcolumn_nameASalias_nameFROMtable_name;
Alias實例:使用表名稱別名
假設我們有兩個表分別是:"Persons"和"Proct_Orders"。我們分別為它們指定別名"p"和"po"。
現在,我們希望列出"JohnAdams"的所有定單。
我們可以使用下面的SELECT語句:
SELECTpo.OrderID,p.LastName,p.FirstNameFROMPersonsASp,Proct_OrdersASpoWHEREp.LastName='Adams'ANDp.FirstName='John'