2016-12-07 4 views
0

私はクエリを実行すると、a.Correct = nullの場合は何も返さないことを除いて正しい値を返します(つまり、クイズの質問には全く答えられていません)が、a.Correct = 0.PHP RIGHT JOINクエリはnullを考慮しませんか?

/***Configure the retest***/ 
    public function CreateRetest($topicID) { 
    $retestData = array(); 
    $count = 0; 

    $createSQL = "SELECT q.QuestionID,q.Question,q.Answer,q.TopicID From quizanswered a RIGHT JOIN question q ON a.QuestionID = q.QuestionID where (a.Correct=null OR a.Correct = 0) AND q.TopicID = '$topicID'"; 
    $create = mysqli_query($this->db,$createSQL) or die(mysqli_connect_errno()."Cannot create tables"); 
    while($row = mysqli_fetch_array($create)){ 
    $rQuestionID = $row['QuestionID']; 
    $rQuestion = $row['Question']; 
    $rAnswer = $row['Answer']; 
    $retestData[$count] = array($rQuestionID,$rQuestion,$rAnswer); 
    $count +=1; 
    } 
    return $retestData; 

} 
+0

IS NULLであなたのquestionをPHPにrelatedないさを交換してください。 PHPタグとすべてのPHPコードを削除し、** ** SQLクエリだけを残す – Dekel

答えて

0

=null

SELECT 
    q.QuestionID, 
    q.Question, 
    q.Answer, 
    q.TopicID 
FROM quizanswered a 
RIGHT JOIN question q 
ON a.QuestionID = q.QuestionID 
WHERE (a.Correct IS NULL OR a.Correct = 0) AND q.TopicID = '$topicID' 
関連する問題