-1

提供我在我的表四列值兩列之間的差異:用戶定義的函數來計算基於用戶

  • Taxandotherexpenditurespercent
  • * NetAmount ***
  • * Taxandothereherependituremoney **
  • 金額

現在我想是在netamount柱用戶定義的函數,其計算金額並根據由用戶提供的值

即假設用戶電源之間差25 %as Taxandothereexpenditurespercent then NetAmount必須是金額 - Taxandotherexpenditurespercent

類似地,如果值是耗材100然後NetAmount必須金額 - Taxandotherexpendituremoney

我試過Google和它的一切,但我找不到任何滿意的解釋給用戶定義的功能?

回答

0

這是你可以做的。當然會改變一下以適應您的要求。

CREATE FUNCTION UDF_FindDifference (@OtherExpenditures VARCHAR(50)) 
RETURNS INT 
AS 
BEGIN 
DECLARE @NetAmount INT 

IF(CHARINDEX('%', @OtherExpenditures) > 0) 
    BEGIN 

     DECLARE @Amount INT 

     SELECT @Amount = Taxandotherexpenditurespercent FROM yourTABLE 

     SET @NetAmount = @Amount - REPLACE(@OtherExpenditures, '%', '') 


    END 
ELSE 
    BEGIN 

     DECLARE @Amount2 INT 

     SELECT @Amount2 = Taxandotherexpendituremoney FROM yourTABLE 

     SET @NetAmount = @Amount2 - @OtherExpenditures 

    END 
RETURN @NetAmount 
END 

所以我在這裏檢查,如果用戶輸入具有%跡象,基於這一標準我做計算。