2011-05-11 42 views
2

我有這個查詢,其中的參數是從excell工作表中的2個單元格中提取的,其他的查詢所在的單元格也是這樣。所以,問題是我打開數據連接來改變查詢,因爲它返回的值是錯誤的,並重新查詢。現在我做到以下幾點:excel中的sql查詢

DECLARE   @year AS int 
DECLARE   @month AS int 
DECLARE   @date AS datetime 

SET    @year = ? 
SET    @month = ? 

SET    @date = DATEADD(month, 1, CONVERT(datetime, CONVERT(varchar(4), ?) + '-' + RIGHT('0' + CONVERT(varchar(2), ?), 2) + '-01')) 
SET    @date = DATEADD(month, 1, CONVERT(datetime, CONVERT(varchar(4), ?) + '-' + RIGHT('0' + CONVERT(varchar(2), ?), 2) + '-01')) 

,然後我希望FO參數按鈕被白標明爲我costumize他們並沒有什麼。 聲明本身有問題嗎?

後來,上查詢,我做的事情,日期> =

DECLARE   @year AS int 
DECLARE   @month AS int 
DECLARE   @date AS datetime 

SET    @year = ? 
SET    @month = ? 

SET    @date = DATEADD(month, 1, CONVERT(datetime, CONVERT(varchar(4), ?) + '-' + RIGHT('0' + CONVERT(varchar(2), ?), 2) + '-01')) 
SET    @date = DATEADD(month, 1, CONVERT(datetime, CONVERT(varchar(4), ?) + '-' + RIGHT('0' + CONVERT(varchar(2), ?), 2) + '-01')) 

這些都是參數。 這個日期聲明有什麼問題嗎?基本上我有2個日期,closure_date和begin_date,他們都接受年和月。這些是參數。我應該如何'爲他們查詢'?

+0

是您的查詢保存爲一個存儲過程?它應該如果你想傳遞參數。 – Juliusz 2011-05-11 11:25:04

回答

0

SET    @year = ? 
SET    @month = ? 

看來我錯了 - 我不是100%肯定,但是這可能是問題...