You can also subtract one day from the date field where Sunday becomes Saturday and Monday becomes Sunday hence it would sort the days from Monday to Sunday.

Code:
select * from XYZ order by to_char(buydate-1,'D') ;