1
SELECT C.COURSE_ID, TITLE, A.STUDENT_ID, COMPANY_ID, AD.ADDRESS
FROM COURSE C, STUDENT S, ADDRESS AD, ATTENDANCE A
WHERE C.COURSE_ID = AD.COURSE_ID
AND AD.ADDRESS = A.ADDRESS
AND A.STUDENT_ID = S.STUDENT_ID
AND COMPANY_ID IS NOT NULL;

私は 4 つのテーブルを持っています。このクエリは、Attendance テーブルに存在しない ADDRESS を含める必要があることを除いて、必要なすべてを実行します。例えば

ADDRESS TABLe          ATTENDANCE table
Address                  Address
  a                         a
  b                         b
  c
  d

だから私は最終結果を表示したい:

COURSE ID    TITLE   STUDENT_ID   COMPANT_ID   ADDRESS
   BLA        BLA      BLA         BLA           a
   BLA        BLA      BLA         BLA           b
   BLA        BLA      BLA         BLA           c
   BLA        BLA      BLA         BLA           d

上記のクエリは同じ結果を示していますが、「アドレス」列に存在する c と d を除外しています。

私が十分に明確でない場合は申し訳ありません。ありがとうございました

4

1 に答える 1

2

を使用してテーブルLEFT JOINを結合するようにクエリを変更すると、テーブルに存在しないすべてのレコードが除外されます。ATTENDANCEADDRESS

于 2012-07-04T23:57:03.793 に答える