This still doesn't produce the desired results.
WHERE table1.someField = table2.someField
This is the problem child. If either one of these is NULL, then the result of the comparison is also NULL because NULL is an indeterminate value. What is the result of the comparison "1=NULL"? You can't tell because NULL is indeterminate and you don't know what it really represents.
If both of them are NULL, the result is still NULL because you can't determine whether two unknown values are equal.
To properly display 1 row of output for every row in another table, regardless of whether the foreign key is NULL, you must (in the case of MySQL) use a LEFT JOIN or one of its synonyms.
There may be another way to do this, but an outer join is the only way that I'm aware of.