DISTINCT is designed to cut out the repetition of identical rows not just ones that might share the same ID or name.
To trim down your results where DISTINCT isn't helping try using the GROUP BY attribute
-------------------
Basicly, there's probably something wrong with your query, if you feel the need to use DISTINCT. The number of times I *really* needed to use (the mathematically more correct) DISTINCT, I can count on the fingers of one hand of a guy who worked 40 years in a sawmill...
So think about what joins you're doing, how you're filtering and why you're getting 'to many rows' (which can not be fixed by distinct!)
(Math note: In set algebra, there is only a 'Select Distinct' since sets by their very definition contain no duplicates. Why the SQL creators went with bags and 'Select All' by default... I don't know. Therefore, 'Select Distinct' only eliminates real duplicates from your result set. )