10e*_*e5x 0 sql sql-server datetime ssis sql-server-2005
如何指定特定时间的当前日期?
让我们说上午8:00:00到数据类型的EXIT_DT列datetime?
我试过GETDATE()AS EXIT_DT,但它给了我当前的日期时间.我正在使用Sql server 2005.有什么帮助吗?
让我们说今天是2013年1月3日,我希望我的结果作为datetime数据类型返回值为1/3/2013 8:00:00 AM.如果我运行语句ytd,结果将是1/2/2013 8:00:00 AM
该公式将在调用它的那一天始终产生08:00,并避免字符串操作:
select DATEADD(day,DATEDIFF(day,'20010101',GETDATE()),'2001-01-01T08:00:00')
Run Code Online (Sandbox Code Playgroud)
尽量避免转换为字符串和从字符串转换的解决方案 - 将日期时间值视为字符串是最大的错误来源之一.
它的工作原理是计算自2001年1月1日以来经过的天数(整数).然后将相同的天数加到2001年1月1日的08:00.