2015-09-07 31 views
1

林尋找一種方式,如果用戶選擇轉發依賴@startdate @結束日期= @ STARTDATE + 1周

@startdate = '12-01-2015' 
then 
@enddate = @startdate + 1 Week 

這是我的參數,但請注意我的報告是一個矩陣,每星期使用對於數據的樣本,因此參數需要在('12 -01-2015' ,'19 -01-2015' )

自動選擇 其從所有startdates結束日期選擇

startdates

然後endate在('18 -01-2015' ,'26 -01-2015' )

這是使用什麼即時通訊爲我的開始日期參數

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

'DATEADD(周,1,@開始日期)' –

回答

0

使用DATEADD

@startdate = '12-01-2015' 
then 
@enddate = DATEADD(wk, 1, @startdate) 

,或者如果STARTDATE變量具有DATE/DATETIME

@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 
+0

我怎樣寫此作爲選擇我的參數 的開始日期不會被預定義,因此用戶選擇的開始日期 即你可以給我寫一個select語句,它將在傳入{@startdate} – Cladback

+0

@Cladback的任何日期後添加7天@Cladback查看我更新的答案 – lad2025

+0

乾杯bro appriciate你的時間 – Cladback

相關問題