SQL服务器:如何按日期排序,如果日期是
-
10-07-2019 - |
题
下面是一个有趣的一个...希望我能解释得很好...
我有比赛在一个表中的集合在我的SQL Server数据库。我做了他们一个全文检索,工作正常。然而,有些比赛是封闭的,我想这些封闭谱曲到开放谱曲后显示出来,同时还尊重我们的全文搜索获得的排名。
所以,如果我有一个ISOPEN位费尔德,我想他们通过
有序ORDER BY IsOpen DESC, KEY_TBL.Rank DESC
现在的问题是我没有一个ISOPEN位字段。相反,我有一个ClosedDate场,这是一个日期时间。
所以我真正需要做的是一样的东西:
ORDER BY (ClosingDate < GetDate()) ASC, KEY_TBL.Rank DESC
任何人都知道如何做到这一点?
任何想法将是巨大的!由于事先。
-ev
解决方案
ORDER BY
CASE
WHEN (ClosingDate < GetDate())
THEN 1
ELSE 0
END ASC,
KEY_TBL.Rank DESC
其他提示
加(ClosingDate 可能添加(ClosingDate 我不知道的心脏,如果函数的语法,关注一下吧!select ... , add (ClosingDate < GetDate()) as Foo
from ...
where ...
order by foo
不隶属于 StackOverflow