转换为日期时间,仅传递日期和小时

时间:2014-10-14 04:15:01

标签: sql sql-server

我正在使用SQL服务器,我想将datetime插入我的datetime列。我收到的参数如下

@hour int,
@date varchar(10) -- format YYYY-MM-DD

如何转换为此日期时间格式:

YYYY-MM-DD HH:MM:SS

MM将为00,因为我们只考虑小时 HH:MM将以24小时格式

示例:

@date = '2014-10-2'
@hour = '8'

应转换为

2014-10-2 08:00:00

我该怎么做?

2 个答案:

答案 0 :(得分:4)

我认为这两个变量都是varchar类型,因为你用变量括号

  SELECT CONVERT(DATETIME, @date + ' ' + convert(varchar(10),@hour) + ':00:00') 

答案 1 :(得分:0)

这是另一种方法: -

declare @hour int=8,
@date varchar(10)='2014-10-2'
select dateadd(hh,@hour,CONVERT(datetime,@date))