Hi All, Just to conclude on this topic - many thanks again for all the wonderful suggestions. I did have some success with the cardinality hint but it only worked in the toy case that I'd presented to the list where I was joining against a single row table. In the messy real world I didn't actually want to perform such filtering (down to a single row) until at least one level of nesting further out and I couldn't quite get it to work. What did work was a bit of tweaking of the NASTY_VIEW itself so that I did not join on ID alone but on another supplementary column for which I knew the return value in all the cases I was interested in. This constrained the join/view further than id alone and everything started to behave. I feel this is almost cheating (and I'm sorry I didn't even mention this was a possibility - didn't occur to me yesterday!) but it does the job. I've not yet explored the plans to see exactly what's changed. I've learned a lot of tips and techniques and received a lot of hints (ha ha!) from this thread so once again a big thank you for corresponding! Charlotte __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com -- //www.freelists.org/webpage/oracle-l