私は2つのテーブルどのように右/左の結合を検索しますか?
tblcourse
-courseid
-name
-status tblenroll
-courseidを持っている、複数のテーブル を検索する問題が生じています(tblcourseからcourseidを保持)
-studentid
学生は学生NUMとして1990を持っており、彼は私が1990年にあり、彼はaintのものが
に加入していることコースの名前を取得したいtblenrolで2コースに登録言うことができます
私はちょうどtblcoursesに右外部に参加していますが、私は望みの結果を得ていますが、where節を付けると、彼の学生番号を取得できない残りのコースを教えてくれません。
助けてください! (OPによって投稿の答えから追加)
EDIT
ねえ、返信いただきありがとうございます。私はそれを適切に説明したとは思わない。
tblcourseたちは6コースを持っている想像し、 tblenrollはそう多く就学
を保持している多くの講座を開催します。学生の1のための3、学生1880のための1990個のレジスタ(1990ピックしなかったこと1)
私たちは、この実行すると:
WHERE (tblenroll.studentid = 1990 or tblenroll.studentid is null)
または
where e.studentid is null or e.studentid is not null and e.studentid = 1990
を、それが5コースをピックアップします、 3は1990年に登録され、2はNULLです。 1 1990 - - 3 NULL第六1は、このクエリは、右の結果をもたらすではなく、私は
1880を取得します上記で特定の生徒
SELECT
tblenroll.studentid as stud,
tblcourse.name,
tblenroll.studentid,
tblenroll.courseid,
tblcourse.courseid,
FROM
tblenroll
Right Join tblcourse ON tblenroll.courseid = tblcourse.courseid
のために1880年
に登録されています - 2
混乱するもの!
あなたは、SQLを投稿することができますか? – andrewWinn