Please don't use "this." needlessly. I found myself asking "Why does this for loop look different than the last one? Is it different?".

Also, does there need to be 2 loops or can the table be selected even while the OUTER_JOIN is being scanned for -- possibly "tentatively" at first.