這是我寫入存儲過程的第一步。我試圖獲取兩個日期之間所有訂單的清單。我會每月運行此過程,獲得最後6個月的訂單。如果我在本月的2號或15號運行它,它仍然需要從前一個月末的前6個月。第一個存儲過程 - 無法變量工作
下面的代碼:
CREATE PROCEDURE pMonthlyCustomerReport
-- Get the last day of the previous month and the first day of 6 months ago
@enddate date,
@startdate date
AS
SET @enddate = DATEADD(D,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0));
SET @startdate = DATEADD(M, DATEDIFF(MONTH, 0, GETDATE())-6, 0);
-- Get orders for the past 6 months
SELECT acct_num, date as OrderDate, type as OrderType
INTO #Orders
FROM rders
WHERE date BETWEEN @startdate AND @enddate;
當我運行PROC,我得到這個錯誤信息:
過程或函數 'pMonthlyCustomerReport' 需要參數 '@EndDate',但未提供。
我應該在這裏使用的任何建議或最佳做法?我可能會過度考慮創建@enddate
,@startdate
,並且應該將它們放入查詢中,但我想先聲明變量。
有什麼想法?
感謝