To answer this question, the user must know the different types of joins in SQL.
INNER JOIN: returns only matched data from both tables.
LEFT OUTER JOIN: returns all data from the left table and matched data from the right table.
RIGHT OUTER JOIN: returns all data from the right table and matched data from the left table.
FULL OUTER JOIN: returns all matched and unmatched data from both tables.
Now, let's go through each option and determine whether it is a valid case to use a FULL OUTER JOIN:
A. Both tables have NULL values.
This option is not a determining factor in deciding to use a FULL OUTER JOIN.
B. You want all unmatched data from one table.
This option does not require a FULL OUTER JOIN, as a LEFT OUTER JOIN or RIGHT OUTER JOIN would suffice depending on which table has the unmatched data.
C. You want all matched data from both tables.
This option requires an INNER JOIN, not a FULL OUTER JOIN.
D. You want all unmatched data from both tables.
This option requires a FULL OUTER JOIN, as it returns all matched and unmatched data from both tables.
E. One of the tables has more data than the other.
This option does not necessarily require a FULL OUTER JOIN, as a LEFT OUTER JOIN or RIGHT OUTER JOIN could also be used depending on which table has more data.
F. You want all matched and unmatched data from only one table.
This option does not require a FULL OUTER JOIN, as a LEFT OUTER JOIN or RIGHT OUTER JOIN could be used depending on which table has the data.