Sql server 如何在sql server中对包含日期和单词的列表进行排序

Sql server 如何在sql server中对包含日期和单词的列表进行排序,sql-server,Sql Server,该列表包含单词Immediate或datetime 如何在结束时在顶部显示即时消息和日期。您可以尝试使用以下命令: case when prefinallist.truckbooked is null then 'Immediate' else CAST(prefinallist.previous_date as varchar) END as ETA 或者,您也可以在ORDER中使用CASE语句 ORDER BY (`ETA` = 'Immediate') ASC 我认为当ETA是“立即

该列表包含单词Immediate或datetime


如何在结束时在顶部显示即时消息和日期。

您可以尝试使用以下命令:

case when prefinallist.truckbooked is null then 'Immediate' else CAST(prefinallist.previous_date as varchar) END as ETA 
或者,您也可以在ORDER中使用CASE语句

ORDER BY (`ETA` = 'Immediate') ASC

我认为当
ETA
是“立即”时,应该添加一个值为0的列,当它是日期时,应该添加一个值为1的列。然后按此附加列和
ETA
进行排序。谢谢@Rahul Tripathi。在立即数之后的顺序中,日期时间应该是按顺序的。@Rubenrj:-您只需在
order by
子句中追加
prefinallist.previous_date asc
ORDER BY CASE WHEN ETA = 'Immediate' THEN 1 ELSE 2 END