私はこのような3つのテーブルを持っています:
学生
stuNum | stuName
------------------
2012 | jack
2013 | tom
クイズ
quizNum | quizName
------------------
1 | chapter 1
2 | chapter 2
3 | chapter 3
学生の評価
stuNum | quizNum | assessmentMark
-----------------------------------
2012 | 1 | 10
2012 | 2 | 8
2012 | 3 | 10
2013 | 1 | 5
こんな結果が欲しい
stuNum | stuName | Quiz Num | assessmentMark
--------------------------------------------
2012 | jack | 1 | 10
2012 | jack | 2 | 8
2012 | jack | 3 | 10
説明:3つのテーブルすべてが接続されています。すべてのstuNumが実行したstuNum = 2012、quizNumを取得したいと思います。
結果を取得するためにいくつかの組み合わせを試しましたが、機能しません。これは私が試した組み合わせの例です:
$sql = "select a.stuNum,a.quizNum,a.assessmentMark from studentassessment a inner join student b on a.stuNum=b.stuNum inner join quiz c on a.quizNum=c.quizNum where b.stuNum='2012'"
クエリ
SELECT a.stuNum,
b.stuName,
a.quizNum,
c.quizName,
a.assessmentMark
FROM studentAssessment a
JOIN student b
ON a.stuNum=b.stuNum
JOIN quiz c
ON a.quizNum=c.quizNum
WHERE a.stuNum=2012;
出力
+--------+---------+---------+-----------+----------------+
| STUNUM | STUNAME | QUIZNUM | QUIZNAME | ASSESSMENTMARK |
+--------+---------+---------+-----------+----------------+
| 2012 | Jack | 1 | chapter 1 | 10 |
| 2012 | Jack | 2 | chapter 2 | 8 |
| 2012 | Jack | 3 | chapter 3 | 10 |
+--------+---------+---------+-----------+----------------+
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加