2

私は2つのテーブルを持っています:

スケジュール

id  id_teacher       subject    class     hour    day
1   2 [->]             Math         X C     8   Monday
2   2 [->]             Math         X C     12  Wednesday
3   2 [->]             Math         X C     9   Tuesday
4   2 [->]             Math         VI B    10  Monday
5   2 [->]             Math         X C     11  Monday
6   2 [->]             Math         X C     10  Tuesday
7   5 [->]             Chemistry    X C     9   Monday
8   5 [->]             Chemistry    X C     12  Monday
9   2 [->]             Sports       X C     7   Monday
10  5 [->]             Biology      X C     11  Friday
11  2 [->]             English      X C     12  Friday
12  2 [->]             Chemistry    X C     9   Thursday

グレード

Id  id_elev     subject     date        grade   semester
4   1 [->]      English     2013-10-01  8       1
5   1 [->]      Math        2013-10-03  7       1
6   1 [->]      Math        2012-10-03  8       2
7   1 [->]      English     2013-02-28  9       2
8   4 [->]      Math        2013-10-06  5       1
9   4 [->]      English     2013-07-02  7       2
10  4 [->]      Sport       2013-10-01  9       1
11  1 [->]      Math        2013-10-03  4       1
12  1 [->]      English     2013-10-16  9       1

スケジュールからすべての科目を取得したい:

生物、化学、英語、数学、スポーツ

$sth1 = $dbh->prepare("SELECT * FROM schedule WHERE class = :class GROUP BY subject;");
$sth1->bindParam(":class", $a);   
$sth1->execute();
while($result1 = $sth1->fetch(PDO::FETCH_ASSOC)){
     echo $result1['subject']." ";
}

$a は 'X C' と等しい変数です。

今まではすべて問題ありません。

ここで、すべての科目とすべての科目の平均を選択したいと思います。

$sth = $dbh->prepare("SELECT id_student, subject, AVG(grade) FROM grades WHERE id_student = :id_student AND semester = 2 GROUP BY subject;");
$sth->bindParam(":id_student", $_SESSION['id']);   
$sth->execute();

while($result = $sth->fetch(PDO::FETCH_ASSOC)){
            echo $result['subject']." ".$result['AVG(grade)'];
}

そして、それは私に示しています:

英語 9.0000 数学 8.0000

しかし、スケジュールからすべての科目を選択して、学生がその科目の成績を持っていなくても年齢を上げたい...エコーが0でない場合。

すべての生徒の科目と成績をグラフにしようとしています。写真はおそらく私が望むものを正確に示しています。

ここに画像の説明を入力

ありがとうございました

4

1 に答える 1