如何使用mySQL添加“A”,“B”,“C”等分数

时间:2013-08-16 04:14:29

标签: php mysql codeigniter model

您好我想问一些事情

如何使用mysql QUERY

添加A B C D等分数
SELECT dcm_peserta.nm1, COUNT(siswa.nis) as jml, ROUND(dcm_peserta.nm1 / COUNT(dcm_peserta.nis) * 100) as percent

        /* add SELECT for scoring here */
FROM dcm_peserta, siswa
WHERE siswa.id_kelas = dcm_peserta.id_kelas AND dcm_peserta.id_kelas = '65'
GROUP BY dcm_peserta.nis

如果 percent = 0 得分A,如果百分比= 1直到20 得分B

任何想法?

2 个答案:

答案 0 :(得分:3)

php中使用词典查找成绩:

$grades = array ( -1=>'A', 'B', 'C', 'D','E','F' );

for ($percentage=0; $percentage<=100; $percentage++) {
  $grade = $grades[floor(($percentage-1)/20)];
  echo sprintf("%s%% => %s\n", $percentage, $grade);
}

答案 1 :(得分:2)

如果必须在查询中执行此操作,请使用CASE

请注意,自上而下处理案例的方式与if...elseif结构相同,因此您无需明确该范围(即我在>80之后{ {1}},因此=100仅在'F'未通过时才会被选中。即=100>80。)

<> 100