JOINSについて学習していて、次の質問についてサポートが必要です。
BOOKSテーブル内のすべての本のリストを表示します。顧客が本を注文した場合は、注文番号と顧客の居住地も記載してください。
これは私ができることです。Oracle11g。
SELECT B.TITLE, O.ORDER#, C.STATE FROM BOOKS B
LEFT OUTER JOIN ORDERITEMS OI ON B.ISBN = OI.ISBN
LEFT OUTER JOIN ORDERS O ON O.ORDER# = OI.ORDER#
LEFT OUTER JOIN CUSTOMERS C ON C.CUSTOMER# = O.CUSTOMER#;
このクエリでは、結果に35行が表示されます。私のBOOKSテーブルには14行しかありません。私のORDERITEMSテーブルには32行あります。余分な3行は、注文したことのない本だと思いますか?私が持っていることさえ意味がありますか。本のテーブルには14行しかないので、私は考えています。それで、私が返す必要があるのはそれだけですか?同じ本が複数の注文で存在するため、それは不可能だと思います。