I've just added some code to explain.c to change the label of join nodes when they are using special join rules (for outer joins or IN joins). This wasn't all that interesting up through 7.3, because knowing the query you could be quite sure which join rule was in effect at each step. But now that the planner knows some things about different ways to implement IN and the possibility of reducing outer joins to plain joins, I'm finding that it's important to be able to see the join rule in EXPLAIN's output.
The alternatives I put in look like so: "Nested Loop" "Nested Loop Left Join" "Nested Loop Full Join" "Nested Loop Right Join" "Nested Loop IN Join" "Merge Join" "Merge Left Join" "Merge Full Join" "Merge Right Join" "Merge IN Join" "Hash Join" "Hash Left Join" "Hash Full Join" "Hash Right Join" "Hash IN Join" Although "Merge Left Join" seems to read well, I'm less happy with "Nested Loop Left Join". I'm tempted to relabel the nestloop cases as "Nestloop Join" "Nestloop Left Join" "Nestloop Full Join" "Nestloop Right Join" "Nestloop IN Join" Is anyone particularly wedded to "Nested Loop"? Or perhaps somebody has some other, better idea? regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html