嗨,我有一列记录为(2017-11-21 02:16:22.870)。
我只想从上面的记录中选择日期和小时(即:-2017-11-21 02)。
答案 0 :(得分:3)
如果要按小时四舍五入,可以执行以下操作:
select dateadd(hour, datediff(hour, 0, datetimecol), 0)
如果您可以住两栏,我建议:
select cast(datetimecol as date) as datepart, datepart(hour, datetimecol) as hourpart
如果要以特定格式输出,则需要转换为字符串:
select convert(varchar(13), datetimecol, 121)
答案 1 :(得分:2)
要从getdate()格式中选择日期
SELECT CONVERT(date, '2017-11-21 02:16:22.870')--2017-11-21
,然后从getdate()格式中选择小时
datepart(HOUR, '2017-11-21 02:16:22.870')--2
答案 2 :(得分:2)
将datepart
用作小时,将convert
用作日期
select concat( concat(convert(date,'2017-11-21 02:16:22.870'),':'), datepart(hour,'2017-11-21 02:16:22.870'))
2017-11-21:2
答案 3 :(得分:0)
我会使用CONVERT()
:
SELECT CONVERT(VARCHAR(13), col, 120)