Distinct is always applied to all values in the select list. Maybe you should look up group by.
Your query, as stated, also presents problems. If there are duplicated records with regard to field1 and field2 but not with regard to field3, which of the values in field3 should be used for sorting?
If you have distinct in the select clause, any columns in the order by clause must be present in the select clause.