ALTER FUNCTION CalcTax (@TaxType VARCHAR(3), @InvoiceDate DATETIME, @Amount MONEY) RETURNS DECIMAL AS BEGIN DECLARE @TaxPercent DECIMAL SELECT @TaxPercent = Tax_Percent FROM Tax_Table TT WHERE TT.Tax_Type = @TaxType AND TT.Effective_Date = (SELECT MAX(Effective_date) FROM Tax_Table T1 WHERE T1.Tax_type = TT.Tax_Type AND T1.Effective_date <= @InvoiceDate) RETURN (@TaxPercent) END GO SELECT dbo.CalcTax('TED', '1996-01-01', 123.12)