MySQL是一種流行的開源數據庫,廣泛用于各種應用程序中。在學生管理系統中,常常需要計算學生的成績及格率。通過MySQL可以快速、高效地求出成績及格率。
首先,建立一個學生成績表,包含學生名字和成績兩個字段:
CREATE TABLE score ( name VARCHAR(20) NOT NULL, grade INT NOT NULL );
然后,插入學生的成績數據:
INSERT INTO score (name, grade) VALUES ('小明', 90); INSERT INTO score (name, grade) VALUES ('小紅', 80); INSERT INTO score (name, grade) VALUES ('小剛', 70); INSERT INTO score (name, grade) VALUES ('小美', 60); INSERT INTO score (name, grade) VALUES ('小張', 50);
計算及格率可以使用如下的SQL語句:
SELECT COUNT(*) as cnt, SUM(IF(grade >= 60, 1, 0)) as pass_cnt, ROUND(SUM(IF(grade >= 60, 1, 0)) / COUNT(*) * 100, 2) as pass_rate FROM score;
代碼中的IF函數用來判斷成績是否及格,如果成績大于等于60分,則返回1,否則返回0。SUM函數用來求出及格的學生數目,COUNT函數用來求出總學生數目。最后使用ROUND函數將及格率保留兩位小數。
執行以上SQL語句后,可以得到如下的結果:
+-----+----------+-----------+ | cnt | pass_cnt | pass_rate | +-----+----------+-----------+ | 5 | 3 | 60.00 | +-----+----------+-----------+
其中,cnt表示總學生數目,pass_cnt表示及格的學生數目,pass_rate表示及格率。
總之,MySQL是一種強大的數據庫管理系統,能夠高效地計算各種數據,包括學生的成績及格率。利用MySQL,能夠輕松地管理學生的成績信息,實現教育信息化。
上一篇css 表格 字體加粗
下一篇mysql求總分的最高分