select * from table
order by
case when date_created > curdate() - interval 2 week then 1 else 2 end,item
ZAKTUALIZOWANA ODPOWIEDŹ
(select * from table
where date_created > curdate() - interval 2 week
order by date_created desc limit 0,10000000000)
union all
(select * from table
where date_created < curdate() - interval 2 week
order by item
limit 0,10000000000)
LIMIT
Użycie 's jest konieczne, gdy musisz zastosować zarówno sortowanie asc, jak i desc w ramach union.