In PostgreSQL 18, table emp has 3 rows and table empty_t has 0 rows. How many rows does SELECT * FROM emp CROSS JOIN empty_t; return?
Explanation
A cross join produces N x M rows, and any product with a zero factor is zero, so the left rows vanish entirely. Answering 3 treats CROSS JOIN as if it preserved the left side the way an outer join does.