【发布时间】:2010-06-23 17:23:47
【问题描述】:
如何从datetime 中选择小时?
我正在寻找相当于 Oracle 的 TO_CHAR( d, 'HH24' ),它会为 2010-06-23 17:22:31 返回 17。
我试图找出在 StackOverflow 上使用 Data Explorer 提出 SQL 相关问题的最佳时间(最佳答案/问题比例)。我得到了它的工作,但我确信有一个更优雅的版本。
Select
Left( Convert(VARCHAR(10), creationDate, 8 ), 2 ) As hour,
Convert(Float, Count(*)) / Count(Distinct p.parentId) As ratio
From posts p
Join postTags pt On ( pt.postId = p.parentId )
Join tags t On ( t.id = pt.tagId )
Where p.postTypeId = 2 And t.tagName = '##TagName##'
Group By Left( Convert(VARCHAR(10), creationDate, 8 ), 2 )
Order BY hour
顺便说一句,最好的时间似乎在15:00 和16:00 之间——我想我问得太晚了:)
【问题讨论】:
标签: sql sql-server datetime