Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL ordina un intervallo di date dall'inizio, quindi ordina tutto il resto in base ad altri criteri

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

RISPOSTA AGGIORNATA

(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 l' uso è necessario quando devi applicare sia l'ordinamento asc che desc all'interno di union.