Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 转发依赖项@startdate@enddate=@startdate+1周_Sql_Tsql_Visual Studio 2012_Parameters - Fatal编程技术网

Sql 转发依赖项@startdate@enddate=@startdate+1周

Sql 转发依赖项@startdate@enddate=@startdate+1周,sql,tsql,visual-studio-2012,parameters,Sql,Tsql,Visual Studio 2012,Parameters,我正在寻找一种方法,如果用户选择 @startdate = '12-01-2015' then @enddate = @startdate + 1 Week 这是我的参数,但请注意,我的报告是一个矩阵,每周用于数据样本,因此参数需要自动选择 它的结束日期来自所有选定的起始日期 i、 e 2015年1月12日、2015年1月19日的开工日期 然后在“18-01-2015”、“26-01-2015”中结束 这就是我使用的startdate参数 select distinct CAST(startd

我正在寻找一种方法,如果用户选择

@startdate = '12-01-2015'
then
@enddate = @startdate + 1 Week
这是我的参数,但请注意,我的报告是一个矩阵,每周用于数据样本,因此参数需要自动选择 它的结束日期来自所有选定的起始日期

i、 e

2015年1月12日、2015年1月19日的开工日期

然后在“18-01-2015”、“26-01-2015”中结束

这就是我使用的startdate参数

select distinct
CAST(startdate AS DATE) as Startdate
FROM [Calendar] 
where DatePart(YEAR,startdate)  >= 2014
order by 1 asc
使用DATEADD

或者如果startdate变量具有日期/日期时间类型

编辑:

使用DATEADD

或者如果startdate变量具有日期/日期时间类型

编辑:


DateaddWeek,1,@startdate DateaddWeek,1,@startdate我如何将其作为我的参数的select写入,因为开始日期不会预先定义,因此用户将选择开始日期,也就是说,您可以为我编写select语句,该语句将在传递到{@startdate}的任何日期后添加7天Cheers bro Appricate your time我如何将其作为我的参数的select写入,因为开始日期不会预先定义,因此用户将选择开始日期,也就是说,您可以给我写select语句,将在传递到{@startdate}的任何日期后添加7天。Cheers bro Appricate your time
@startdate = '12-01-2015'
then
@enddate = DATEADD(wk, 1, @startdate)
@startdate = '12-01-2015'
then
@enddate = @startdate + 7;   -- Implicit cast add 7 days
select distinct
    CAST(startdate AS DATE) as Startdate,
    DATEADD(wk, 1, CAST(startdate AS DATE)) as EndDate
FROM [Calendar] 
where DatePart(YEAR,startdate)  >= 2014
order by 1 asc