Let me see if I understand correctly what it is you're trying to do. You have users that have profiles, and buddy lists. The buddy lists are lists of other users. And for a particular user, you want to retrieve and display information from the profiles of the users in their buddy list. Is that correct? A little more information about the structure of your database would probably be helpful. My general advice would be to test the SQL independently (using phpMyAdmin or Access, as jsladek suggested... or even running the query directly at the mysql prompt if you can), and unless you're sure that the query returns the values you expect, make them simpler and start from there. For each buddy on the buddy list, retrieve the information from the tables containing profile information separately (one SQL statement for each table -- calendar, children, parent, etc.) See if that works for getting the information that you need. From there if you really need to consolidate your SQL into one statement you can work from the simple to the more complex, and revert back if the changes didn't have the desired result. Good luck.