1. 程式人生 > >(四)Mysql面試筆試練習題

(四)Mysql面試筆試練習題

(三)Mysql面試筆試練習題
26、統計每門課程的學生選修人數。要求輸出課程號和選修人數,查詢結果按人數降序排列,若人數相同,按課程號升序排列
SELECT s.course_id AS ‘課程號’,COUNT() AS ‘人數’ FROM score s GROUP BY s.course_id ORDER BY COUNT() DESC,s.course_id
27、查詢至少選修兩門課程的學生學號
SELECT s.student_id FROM score s GROUP BY s.student_id HAVING COUNT() >= 2
28、查詢全部學生選修過的課程的課程編號和課程名
SELECT course_id, course_name FROM course WHERE course_id IN (SELECT course_id FROM score GROUP BY course_id)
方式二:
SELECT course_id, course_name
FROM course
WHERE course_id IN (SELECT DISTINCT course_id FROM score )
29、查詢兩門以上不及格課程的同學的學號及其平均成績
SELECT sc.student_id,AVG(sc.score) FROM score sc WHERE sc.score <60 GROUP BY sc.student_id HAVING COUNT(

)>2
30、查詢沒有選擇任何一門課程的同學的學號,姓名
##思路:
(1)查詢選擇過任何一門課程的同學的學號
SELECT sc.student_id FROM score sc
(2) 剩餘的同學(不包含not in )
SELECT s.student_id,s.student_name FROM student s WHERE s.student_id NOT IN (SELECT sc.student_id FROM score sc)
31、修改“s007”同學的“c007”課程的成績為100分
UPDATE score s SET s.score=100 WHERE s.student_id=‘s007’ AND s.course_id=‘c007’
32、刪除“s007”同學的“c007”課程的成績
DELETE FROM score WHERE student_id=‘s007’ and course_id=‘c007’
MySQL準備資料以及sql題目

end