title: Not sure if my SQL JOIN is returning the correct set for my assignment
body: <p>I'm learning about JOINS and need help with the following question:</p>
  
  <blockquote>
    <p>Display a list of all books in the BOOKS table. If a book has been
    ordered by a customer, also list the order number and state where the
    customer resides.</p>
  </blockquote>
  
  <p>This is what I can up with. Oracle 11g.</p>
  
  <pre><code>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#;
  </code></pre>
  
  <p>This query is giving me 35 rows in the result. My BOOKS table only has 14 rows. My ORDERITEMS table has 32 rows. I'm assuming the 3 extra rows are books that have never been ordered? Does what I have even make sense. I'm figuring because the books table only has 14 rows, then that's all I should return? I don't think that's possible because the same book exists on multiple orders. </p>