用户定义的函数来计算基于用户
问题描述:
提供我在我的表四列值两列之间的差异:用户定义的函数来计算基于用户
- Taxandotherexpenditurespercent
- * NetAmount ***
- * Taxandothereherependituremoney **
- 金额
现在我想是在netamount柱用户定义的函数,其计算金额并根据由用户提供的值
即假设用户电源之间差25 %as Taxandothereexpenditurespercent then NetAmount必须是金额 - Taxandotherexpenditurespercent
类似地,如果值是耗材100然后NetAmount必须金额 - Taxandotherexpendituremoney。
我试过Google和它的一切,但我找不到任何满意的解释给用户定义的功能?
答
这是你可以做的。当然会改变一下以适应您的要求。
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
所以我在这里检查,如果用户输入具有%
迹象,基于这一标准我做计算。