Bird
0
0

Given these tables:

hard📝 Application Q8 of 15
SQL - Advanced Joins
Given these tables:

Inventory:
ItemID | ItemName
1 | Notebook
2 | Marker
3 | Stapler

Orders:
ItemID | Quantity
2 | 30
3 | 15
4 | 5

Which query using FULL OUTER JOIN will list all items and their ordered quantities, including items not ordered and orders for items not in inventory?
ASELECT Inventory.ItemID, ItemName, Quantity FROM Inventory INNER JOIN Orders ON Inventory.ItemID = Orders.ItemID;
BSELECT Inventory.ItemID, ItemName, Quantity FROM Inventory FULL OUTER JOIN Orders ON Inventory.ItemID = Orders.ItemID;
CSELECT ItemID, ItemName, Quantity FROM Inventory LEFT JOIN Orders ON Inventory.ItemID = Orders.ItemID;
DSELECT ItemID, ItemName, Quantity FROM Orders RIGHT JOIN Inventory ON Orders.ItemID = Inventory.ItemID;
Step-by-Step Solution
Solution:
  1. Step 1: Understand the requirement

    The query must include all items from Inventory and all orders, even if there is no match.
  2. Step 2: Choose the correct join

    FULL OUTER JOIN returns all rows from both tables, matching where possible.
  3. Step 3: Verify syntax and columns

    SELECT Inventory.ItemID, ItemName, Quantity FROM Inventory FULL OUTER JOIN Orders ON Inventory.ItemID = Orders.ItemID; correctly uses FULL OUTER JOIN and selects the relevant columns.
  4. Final Answer:

    SELECT Inventory.ItemID, ItemName, Quantity FROM Inventory FULL OUTER JOIN Orders ON Inventory.ItemID = Orders.ItemID; -> Option B
  5. Quick Check:

    FULL OUTER JOIN includes unmatched rows from both tables [OK]
Quick Trick: Use FULL OUTER JOIN to include all rows from both tables [OK]
Common Mistakes:
MISTAKES
  • Using INNER JOIN which excludes unmatched rows
  • Using LEFT or RIGHT JOIN which excludes unmatched rows from one table
  • Selecting columns without table prefixes causing ambiguity

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More SQL Quizzes