Explain the difference between an INNER JOIN, LEFT JOIN, and OUTER JOIN, and provide a scenario where you would use each.