sql >> Base de Datos >  >> RDS >> Mysql

MySQL ordena un rango de fechas desde el principio, luego ordena todo lo demás por otros criterios

select * from table
order by
case when date_created > curdate() - interval 2 week then 1 else 2 end,item

RESPUESTA ACTUALIZADA

(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 El uso de es necesario cuando tiene que aplicar la ordenación tanto asc como desc dentro de la unión.