TSQL顺序/转换与比较运算符

时间:2014-06-03 09:20:39

标签: tsql

我想有这样的结构:

... order by([datetimefield-1]> getdate()AS MyBoolean)desc,[field-2]

所有日期都是>现在应该是顺序中的第一个但是它不应该按日期本身排序,因为有第二列将给出最后的oder。 datetimefield-1如果是将来应为True,否则为false(或者如果它为NULL)。然后,这个真或假的值应该预先排序,以便日期在未来的所有记录都在最前面。

这里的语法是错误的,但我想有可能是正确的。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

order by case 
           when datetimefield > dateadd(day, 1, getdate())
           then 0 
           else 1 
         end, 
         YourOtherColumn