查詢所有學生語文科目成績,按成績高低排名
SELECT A.ID,A.NAMES,B.SCORE FROM STUDENT A JOIN SCORES B ON A.ID=B.STUDENT_ID WHERE B.SUBJECT_ID='YW' ORDER BY SCORE DESC
UNION ALL 查詢
SELECT * FROM SCORES
UNION ALL //並起來,行數與列數必須相同
SELECT * FROM SCORES2
SELECT STUDENT_ID,SUBJECT_ID,SCORE FROM SCORES
UNION ALL
SELECT STUDENT_ID,SUBJECT_ID,SCORE FROM SCORES2
錯誤查詢,列不相同,如:
SELECT * FROM GRADE
UNION ALL
SELECT * FROM SUBJECT
必須保證列數相同,且數據類型一樣
SELECT ID FROM GRADE
UNION ALL
SELECT ID FROM SUBJECT
查詢2班所有學生數學成績>60分的記錄
SELECT A.ID,A.NAMES,B.SCORE FROM STUDENT A JOIN SCORES B ON A.ID=B.STUDENT_ID WHERE B.SUBJECT_ID='SX' AND A.GRADE_ID='02' AND B.SCORE>60
查詢所有學生信息,顯示學生姓名,性別,年齡,班級名稱,聯繫方式,住址
SELECT A.NAMES,CASE A.SEX WHEN 1 THEN '男' WHEN 2 THEN '女' ELSE '錄入錯誤' END AS SEX,YEAR(CURRENT //當前年份DATE)-YEAR(DATE(A.BIRTHDAY)//轉換成日期類型) AS AGE,B.NAMES,A.MOBILE,A.ADDRESS FROM STUDENT A JOIN GRADE B ON A.GRADE_ID=B.ID
查詢所有學生成績,按照科目排序,沒有成績的學生分數爲0
SELECT C.ID,C.NAMES,C.SUBJECTID,COALESCE(D.SCORE,0) FROM (SELECT A.ID,A.NAMES,B.ID AS SUBJECTID FROM STUDENT A,SUBJECT B) C LEFT JOIN SCORES D ON C.ID = D.STUDENT_ID AND C.SUBJECTID= D.SUBJECT_ID
ORDER BY C.SUBJECTID
//coalesce(c.score,備用的字段)判斷爲備用的