Sorry, I am re-reading my example and realize I messed it up. I think I retyped it like 6 times trying to decide on a way to explain it and lost which example I ended up trying to use
Joins can get confusing quickly (obviously) and when you are trying to control that many tables coming in it can get out of hand quickly.
basically as soon as one table introduces more than one matching row your returned values can get expanded hugely especially if the tables are not linked sequentially but back to the same source table.
You can create circumstances that allow you to filter the table to a single row and then join that filtered data to limit the rows.
Sorry I can't explain better.Maybe some else can jump in and help better here.
Unless one can see your tables and sample data and how the tbales are joined it is hard to figure out where to apply the fix.