2012-03-17 49 views
0

我有一種情況,我需要返回一個日期。在這個函數中,我將提供月份號,我需要返回結果,如「3/13/2012」。使用SQL函數返回靜態日期

declare @date varchar(20) 
select @date=datepart(month,getdate())+'/13/'+datepart(year,getdate()) 
return @date(@date) 

回答

0

下面是我用我的項目的一個工作方案。

創造了月

declare @mon varchar(2) 
set @mon = '3' 
select CONVERT(varchar, @mon + '/13/' + convert(varchar, datepart(year, getdate())), 111) 

執行在SQL服務器上線,你會得到的結果的輸入參數存儲過程。

通過更改set語句中的@mon值進行測試。

希望它可以幫助你。

0

轉換錯誤它給

declare @date varchar(20) 
select @date=convert(varchar(2),datepart(month,getdate()))+'/13/'+convert(varchar(4),datepart(year,ge tdate())) 
print (@date) 
1

這應該雅做到這一點。

CREATE FUNCTION dbo.fnStaticDate(@month varchar(2)) 
RETURNS DATETIME 
AS 
BEGIN 

DECLARE @year VARCHAR(4) 
SET @year = DATEPART(year, GETDATE()) 

RETURN CONVERT(DATETIME, @year + '-' + @month + '-' + '13') 

END 
+0

謝謝你,你是救命的人。 – vijayenderpailla 2012-03-20 09:19:32

+0

@vijayenderpailla - 沒問題,很高興我能幫上忙。順便說一句...我認爲你需要接受一個答案來結束這個問題。 – 2012-03-20 13:01:26