如何在SQL Server中添加当前日期的小时数?

时间:2013-08-29 18:19:35

标签: sql-server-2008

我正在尝试将当前时间添加到

-- NOT A VALID STATEMENT
-- SELECT GetDate(DATEADD (Day, 5, GETDATE()))

如何在SQL Server中提前几小时?

6 个答案:

答案 0 :(得分:95)

DATEADD (datepart , number , date )

declare @num_hours int; 
    set @num_hours = 5; 

select dateadd(HOUR, @num_hours, getdate()) as time_added, 
       getdate() as curr_date  

答案 1 :(得分:5)

Select JoiningDate ,Dateadd (day , 30 , JoiningDate)
from Emp

Select JoiningDate ,DateAdd (month , 10 , JoiningDate)
from Emp

Select JoiningDate ,DateAdd (year , 10 , JoiningDate )
from Emp

Select DateAdd(Hour, 10 , JoiningDate )
from emp


Select dateadd (hour , 10 , getdate()), getdate()

Select dateadd (hour , 10 , joiningDate)
from Emp


Select DateAdd (Second , 120 , JoiningDate ) , JoiningDate 
From EMP

答案 2 :(得分:0)

DATEADD()函数从日期添加或减去指定的时间间隔。

DATEADD(datepart,number,date)

datepart(interval)可以是小时,秒,日,年,季,周等; number(increment int); date(表达式smalldatetime)

例如,如果您想在当前日期添加30天,则可以使用此类

 select dateadd(dd, 30, getdate())

从当前日期减去30天

select dateadd(dd, -30, getdate())

答案 3 :(得分:0)

declare @hours int = 5;

select dateadd(hour,@hours,getdate())

答案 4 :(得分:0)

SELECT GETDATE() + (hours / 24.00000000000000000)

默认情况下,添加到GETDATE()会额外增加几天,但是也会使用小数转换为小时/秒/毫秒。

答案 5 :(得分:0)

如果您使用的是 mySql 或类似的 SQL 引擎,那么您可以使用 DATEADD 方法将小时、日期、月份、年份添加到日期中。

select dateadd(hour, 5, now());

如果您使用 postgreSQL,您可以使用 interval 选项为日期添加值。

select now() + interval '1 hour';