sql >> Database teknologi >  >> RDS >> PostgreSQL

Problem med at konstruere hvor-sætningen til at inkludere null/0-værdier

Flyt teacher_students.teacher_id = 1 tjek fra WHERE klausul til sammenføjningen ON klausul.

Når en betingelse, der refererer til en tabel i højre side af en LEFT JOIN er sat i WHERE-sætningen, annulleres LEFT JOIN, og den fungerer som en INNER JOIN .

SELECT count(teacher_students.student_id) AS rcount      <--- changed
     , questions.id 
FROM "questions"
  LEFT JOIN answers 
    ON answers.question_id = questions.id
  LEFT JOIN teacher_students 
    ON teacher_students.student_id = answers.student_id
    AND teacher_students.teacher_id = 1
WHERE questions.test_id = 1

GROUP BY questions.id 
ORDER BY questions.id



  1. ORM-forespørgselsresultater:Arrays vs Result-håndtag pakket ind i Iterator-grænsefladen

  2. Sådan opretter du en primær nøgle i SQL Server (T-SQL eksempler)

  3. er php sortering bedre end mysql rækkefølge efter?

  4. Hvordan bruger man MySQL i WSL (Windows Subsystem til Linux)?