我为表运行一个select语句。我在DATE类型的字段上执行ORDER BY。 该字段有3个可能的值:
日期> =今天
日期< today
空
我希望它将no2视为null,以便首先为我带来no1结果,然后将所有其他结果,无论它们的值如何,我接下来运行第二个ORDER BY。 我尝试过任何没有成功的事情,似乎这是我所不知道的。 谢谢你读我!
答案 0 :(得分:1)
对于SQL Server:
order by
case when mydate >= getdate() then mydate else null end
答案 1 :(得分:0)
您也可以在mysql中使用CASE语句编写ORDER BY,或者也可以在SELECT子句中使用别名编写CASE语句并按顺序使用它。我无法理解你真正想要的是什么,如果你可以抛出一些样本数据,那么我们可以帮助你查询本身。