Вот пользовательская функция, которая принимает 2 параметра: год и код.Затем функция возвращает значение PACEESRD из таблицы, соответствующей параметру Year.
CREATE FUNCTION GetPACEESRD
(
@Year int,
@Code nvarchar(50)
)
RETURNS int
AS
BEGIN
DECLARE @ResultVar int;
IF (@Year = 2018)
SELECT @ResultVar = PACEESRD FROM Table2018 WHERE Code = @Code;
ELSE
IF (@Year = 2019)
SELECT @ResultVar = PACEESRD FROM Table2019 WHERE Code = @Code;
RETURN @ResultVar;
END
Вы можете протестировать функцию следующим образом:
select dbo.GetPACEESRD(2018, 'A0103');
Пожалуйста, измените типы данных так, чтобы онисопоставьте типы данных ваших таблиц.Функция предполагает, что значения кода уникальны в каждой таблице.Если они не уникальны, функция завершится ошибкой и должна быть изменена.