Another option:

Code:
order by decode(to_char(buydate,'D'), 1, 8, to_char(buydate,'D'))