A Cartesian product occurs when a PROC SQL join is specified without a WHERE clause condition to link the tables, causing every row from one table to combine with every row from the other. Set operations like OUTER UNION operate on rows differently and don't produce Cartesian products.