And this could be used as exact solution which will have the order by and as well as the group by function too
SELECT DISTINCT prl.description ,
convert(varchar,prl.effective_date,103) effective_date,
b.description brand ,
pc.description cat
FROM ProductRateList prl,Products pro,ProductCatg pc, Brands b
WHERE pro.Id = prl.Product_Id AND pc.Id = pro.ProdCatg_Id AND B.Id = pro.Brand_id AND pro.Active = 'Y'
group by convert(varchar,prl.effective_date,103),prl.description , b.description ,
pc.description
ORDER BY prl.Description
order by can contain only those column who either have aggregate function or have distinct