您好:
請問 如下圖,

我要寫一個FUNCTION 沿用datepart 傳入, 那這一個 datepart 要設什麼型別?
比如我要
@datepart_str 這一個 可以值接用SQL 的 型別嗎?
或者,我傳入 VARCHAR(4),要如何轉為 Year,Day 等
CREATE function fn_datetime_diff (  
        @datepart_str  varchar(4) ,
              
        @date_s varchar(8), @time_s varchar(6), 
		@date_e varchar(8), @time_e varchar(6)
)Returns int As  
BEGIN
--select  @date_s='1120801',  @date_e='1120801', @time_s='095901', @time_e='100201' 
DECLARE @i as int;
SELECT   @i=
       DATEDIFF(
	       CASE  WHEN  @datepart_str='yy' then yy
		   END
        , CONVERT(DATETIME, STUFF(STUFF(STUFF(
                                  CONVERT(VARCHAR(8), case WHEN len(@date_s)<=7 THEN @date_s+19110000 ELSE @date_s end  ) +@time_s
							, 9, 0, ' '), 12, 0, ':'), 15, 0, ':'))
	   , CONVERT(DATETIME, STUFF(STUFF(STUFF(
                                  CONVERT(VARCHAR(8), case WHEN len(@date_e)<=7 THEN @date_e+19110000 ELSE @date_e end  ) +@time_e
							, 9, 0, ' '), 12, 0, ':'), 15, 0, ':'))
        ) 
RETURN @i
END;
GO
謝謝!