此myTable显示所有行order by no asc
,
我的问题是,我想用自定义order by
显示所有行,
部分第一行的数据与当前日期相同(使用2015-09-18作为当前日期),之后请根据最小数量自定义行,自定义order by
将从5,4,1,2,3开始排序。
我是如何用sql语句实现的?感谢。
答案 0 :(得分:4)
SELECT *
FROM table
ORDER BY
CASE
WHEN date(date) = curdate() THEN no * (-1) -- when date is current date, sort descending (ascending by negative ID, to reverse order)
ELSE no -- else keep default ascending sort order
END