下面是MIN函数使用的代码片段。当执行下面的代码时,它提供了一个错误。MIN函数需要1个参数
CREATE FUNCTION [dbo].[FN_TempCalcTransportExemp]
(
@EmployeeID varchar(20),
@PayElement varchar(20),
@Month varchar(10),
@FinYear varchar(10)
)
RETURNS decimal
AS
BEGIN
DECLARE @TarnsportExemption decimal(18,2) = 0
DECLARE @TDSIsFullExemption bit
DECLARE @PermanentPhysicalDisability decimal(18,2) = 0
DECLARE @UsingComapnyCar bit
DECLARE @Conveyance decimal(18,2) = 0
DECLARE @TransYes decimal(18,2) = 0
DECLARE @TransNo decimal(18,2) = 0
DECLARE @MinConveyance decimal(18,2) = 0
DECLARE @MinTransport decimal(18,2) = 0
SELECT
@TDSIsFullExemption = TDSDetailsFullExemption,
@TransYes = TDSDetailsYes,
@TransNo = TDSDetailsNo
FROM
tbl_TDSSettingDetails
WHERE
TDSSettingsDetailID = 2
SELECT
@Conveyance = @Month
FROM
tbl_Income
WHERE
EmployeeID = @EmployeeID
AND Element = @PayElement
AND FinancialYear = @FinYear
SELECT
@UsingComapnyCar = UsingCompanyCar,
@PermanentPhysicalDisability = PermanentPhysicalDisability
FROM
tbl_Employee_TDS
WHERE
EmployeeID = @EmployeeID
AND TDSFinancialYear = @FinYear
IF (@TDSIsFullExemption = 1)
BEGIN
SET @TarnsportExemption = @Conveyance
END
ELSE
BEGIN
IF (@UsingComapnyCar = 1)
BEGIN
IF (@Conveyance = 0)
BEGIN
SET @MinConveyance = 0
END
ELSE
BEGIN
SET @MinConveyance = @Conveyance
END
IF (@PermanentPhysicalDisability = 1)
BEGIN
SET @MinTransport = @TransYes
END
ELSE
BEGIN
SET @MinTransport = @TransNo
END
SET @TarnsportExemption = MIN(@MinConveyance, @MinTransport)
END
ELSE
BEGIN
SET @TarnsportExemption = 0
END
END
RETURN @TarnsportExemption
END
错误消息:
消息174,级别15,状态1,过程FN_TempCalcTransportExemp, 线66
MIN函数要求1点的参数(一个或多个)。
错误正在讲话清晰,handel代码的这一行'set @TarnsportExemption = MIN(@ MinConveyance,@ MinTransport)','MIN'函数需要一个。论点,你通过了两个。 –
你可以使用这个'选择@TarnsportExemption =案例当@MinConveyance <@MinTransport 然后@MinConveyance Else @MinTransport结束' – crowchirp