程序员人生 网站导航

SQL SERVER 如何按当前时间排序

栏目:Sqlserver时间:2013-11-21 13:25:49

  网(LieHuo.Net)教程

  问:数据库表有一列,表示预约完成时间,此时需要排序 就是 当预约完成的时间是今天的 排在最前,然后是当前时间以后的,然后才是过期的时间数据。不知道我描述清楚没有。。

  比如: 3个数据吧

  A 时间是 今天

  B 时间是明天

  C 时间是昨天

  取数据时候 排序为 a b c

  请问这样的sql怎么写?

  答:

以下为引用的内容:
Create table Testtable(ID int identity(1,1),dt datetime)goinsert into Testtable(dt)select dateadd(dd,2,GETDATE())union allselect GETDATE()union allselect dateadd(dd,-2,GETDATE())union allselect GETDATE()declare @today varchar(20)set @today=CONVERT (VARCHAR(10),GETDATE(),121)declare @tommorrow varchar(20)set @tommorrow=CONVERT (VARCHAR(10),dateadd(dd,1,GETDATE()),121)--select @today--select @tommorrowselect * from Testtable where dt between cast(@today as datetime) and cast(@tommorrow as datetime) union allselect * from Testtable where dt>=cast(@tommorrow as datetime)union allselect * from Testtable where dt<=cast(@today as datetime)

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐