下面是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