Abb*_*bas 4 datetime sql-order-by sql-server-2008
最近我正在使用select查询之一,其中我想根据存储在不同列中的最新日期和时间对行进行排序.客户的要求是时间是自定义的,所以我不能DateTime一起使用.
现在我有两个问题:
直到我按顺序子句进行更改时才进行排序.我的原始订单条款是:
ORDER BY PublishDate, PublishTime DESC
Run Code Online (Sandbox Code Playgroud)
上面的查询工作正常,但只是排序PublishDate,并且什么都不做PublishTime,我明白它主要是基于排序PublishDate,并且会给予第二选择PublishTime,但是通过上面的查询它没有给出任何偏好PublishTime,但当我将order by子句更改为下面时,它运行正常:
ORDER BY PublishDate DESC, PublishTime DESC
Run Code Online (Sandbox Code Playgroud)
谁能告诉我两个查询之间有什么区别?为什么两者都没有给予主要偏好PublishDate和次要PublishTime?
是否可以将自定义时间附加到DateTime列,我的意思是说,例如,如果用户添加了一行31 March 2012并输入4:00PM,是否可以将自定义时间添加到使用检索的当前日期GETDATE()
order by子句中的默认排序是ASC.因此,如果您未指定,SQL Server将在ASC中保留.所以你真的在比较
Order By PublishDate ASC, PublishTime DESC
Run Code Online (Sandbox Code Playgroud)
至
Order By PublishDate DESC, PublishTime DESC
Run Code Online (Sandbox Code Playgroud)
这就是为什么第二个给你你想要的东西.
| 归档时间: |
|
| 查看次数: |
17308 次 |
| 最近记录: |