【发布时间】:2012-06-27 07:32:46
【问题描述】:
我正在编写一个存储过程,我需要将开始和结束日期作为参数传递,默认情况下开始名称应该是今天日期前 30 天。给我一些建议来做这件事..
开始日期=今天-30 天。 结束日期=今天。
提前致谢。
【问题讨论】:
标签: sql sql-server sql-server-2008
我正在编写一个存储过程,我需要将开始和结束日期作为参数传递,默认情况下开始名称应该是今天日期前 30 天。给我一些建议来做这件事..
开始日期=今天-30 天。 结束日期=今天。
提前致谢。
【问题讨论】:
标签: sql sql-server sql-server-2008
Declare @startdate datetime
set @startdate = DATEADD(day,-30,getdate()) 会给你你的开始日期
【讨论】:
试试这个:
如果您更喜欢使用 日期 数据类型:
set @startdate=dateadd(day,-30,convert(date,getdate()))
set @enddate= convert(date,getdate())
【讨论】:
declare @startdate as date;set @startdate = dateadd(d, -30, GETDATE());select @startdate;
查看传递 -30 的 DATEADD 作为移动和 d 作为日期部分参数。我不在电脑附近给你完整的语法
【讨论】:
select DATEADD(dd,-30,getdate())
会给你开始日期。如果您想从前端传递结束日期,select getdate() 会给您 enddate(current date) 然后只需将 getdate() 替换为来自前端的 Enddate。
【讨论】: